aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2017-10-22 08:36:53 -0400
committerDavid S. Miller <davem@davemloft.net>2017-10-22 08:39:14 -0400
commitf8ddadc4db6c7b7029b6d0e0d9af24f74ad27ca2 (patch)
tree0a6432aba336bae42313613f4c891bcfce02bd4e /scripts
parentbdd091bab8c631bd2801af838e344fad34566410 (diff)
parentb5ac3beb5a9f0ef0ea64cd85faf94c0dc4de0e42 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
There were quite a few overlapping sets of changes here. Daniel's bug fix for off-by-ones in the new BPF branch instructions, along with the added allowances for "data_end > ptr + x" forms collided with the metadata additions. Along with those three changes came veritifer test cases, which in their final form I tried to group together properly. If I had just trimmed GIT's conflict tags as-is, this would have split up the meta tests unnecessarily. In the socketmap code, a set of preemption disabling changes overlapped with the rename of bpf_compute_data_end() to bpf_compute_data_pointers(). Changes were made to the mv88e6060.c driver set addr method which got removed in net-next. The hyperv transport socket layer had a locking change in 'net' which overlapped with a change of socket state macro usage in 'net-next'. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/faddr2line5
-rw-r--r--scripts/kallsyms.c2
-rw-r--r--scripts/mod/devicetable-offsets.c1
-rw-r--r--scripts/mod/file2alias.c6
4 files changed, 10 insertions, 4 deletions
diff --git a/scripts/faddr2line b/scripts/faddr2line
index 29df825d375c..2f6ce802397d 100755
--- a/scripts/faddr2line
+++ b/scripts/faddr2line
@@ -103,11 +103,12 @@ __faddr2line() {
103 103
104 # Go through each of the object's symbols which match the func name. 104 # Go through each of the object's symbols which match the func name.
105 # In rare cases there might be duplicates. 105 # In rare cases there might be duplicates.
106 file_end=$(size -Ax $objfile | awk '$1 == ".text" {print $2}')
106 while read symbol; do 107 while read symbol; do
107 local fields=($symbol) 108 local fields=($symbol)
108 local sym_base=0x${fields[0]} 109 local sym_base=0x${fields[0]}
109 local sym_type=${fields[1]} 110 local sym_type=${fields[1]}
110 local sym_end=0x${fields[3]} 111 local sym_end=${fields[3]}
111 112
112 # calculate the size 113 # calculate the size
113 local sym_size=$(($sym_end - $sym_base)) 114 local sym_size=$(($sym_end - $sym_base))
@@ -157,7 +158,7 @@ __faddr2line() {
157 addr2line -fpie $objfile $addr | sed "s; $dir_prefix\(\./\)*; ;" 158 addr2line -fpie $objfile $addr | sed "s; $dir_prefix\(\./\)*; ;"
158 DONE=1 159 DONE=1
159 160
160 done < <(nm -n $objfile | awk -v fn=$func '$3 == fn { found=1; line=$0; start=$1; next } found == 1 { found=0; print line, $1 }') 161 done < <(nm -n $objfile | awk -v fn=$func -v end=$file_end '$3 == fn { found=1; line=$0; start=$1; next } found == 1 { found=0; print line, "0x"$1 } END {if (found == 1) print line, end; }')
161} 162}
162 163
163[[ $# -lt 2 ]] && usage 164[[ $# -lt 2 ]] && usage
diff --git a/scripts/kallsyms.c b/scripts/kallsyms.c
index 5d554419170b..9ee9bf7fd1a2 100644
--- a/scripts/kallsyms.c
+++ b/scripts/kallsyms.c
@@ -158,7 +158,7 @@ static int read_symbol(FILE *in, struct sym_entry *s)
158 else if (str[0] == '$') 158 else if (str[0] == '$')
159 return -1; 159 return -1;
160 /* exclude debugging symbols */ 160 /* exclude debugging symbols */
161 else if (stype == 'N') 161 else if (stype == 'N' || stype == 'n')
162 return -1; 162 return -1;
163 163
164 /* include the type field in the symbol name, so that it gets 164 /* include the type field in the symbol name, so that it gets
diff --git a/scripts/mod/devicetable-offsets.c b/scripts/mod/devicetable-offsets.c
index 57263f2f8f2f..c6ad9b1585a1 100644
--- a/scripts/mod/devicetable-offsets.c
+++ b/scripts/mod/devicetable-offsets.c
@@ -105,6 +105,7 @@ int main(void)
105 DEVID_FIELD(input_device_id, sndbit); 105 DEVID_FIELD(input_device_id, sndbit);
106 DEVID_FIELD(input_device_id, ffbit); 106 DEVID_FIELD(input_device_id, ffbit);
107 DEVID_FIELD(input_device_id, swbit); 107 DEVID_FIELD(input_device_id, swbit);
108 DEVID_FIELD(input_device_id, propbit);
108 109
109 DEVID(eisa_device_id); 110 DEVID(eisa_device_id);
110 DEVID_FIELD(eisa_device_id, sig); 111 DEVID_FIELD(eisa_device_id, sig);
diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
index 6ef6e63f96fd..2b9395501d81 100644
--- a/scripts/mod/file2alias.c
+++ b/scripts/mod/file2alias.c
@@ -761,7 +761,7 @@ static void do_input(char *alias,
761 sprintf(alias + strlen(alias), "%X,*", i); 761 sprintf(alias + strlen(alias), "%X,*", i);
762} 762}
763 763
764/* input:b0v0p0e0-eXkXrXaXmXlXsXfXwX where X is comma-separated %02X. */ 764/* input:b0v0p0e0-eXkXrXaXmXlXsXfXwXprX where X is comma-separated %02X. */
765static int do_input_entry(const char *filename, void *symval, 765static int do_input_entry(const char *filename, void *symval,
766 char *alias) 766 char *alias)
767{ 767{
@@ -779,6 +779,7 @@ static int do_input_entry(const char *filename, void *symval,
779 DEF_FIELD_ADDR(symval, input_device_id, sndbit); 779 DEF_FIELD_ADDR(symval, input_device_id, sndbit);
780 DEF_FIELD_ADDR(symval, input_device_id, ffbit); 780 DEF_FIELD_ADDR(symval, input_device_id, ffbit);
781 DEF_FIELD_ADDR(symval, input_device_id, swbit); 781 DEF_FIELD_ADDR(symval, input_device_id, swbit);
782 DEF_FIELD_ADDR(symval, input_device_id, propbit);
782 783
783 sprintf(alias, "input:"); 784 sprintf(alias, "input:");
784 785
@@ -816,6 +817,9 @@ static int do_input_entry(const char *filename, void *symval,
816 sprintf(alias + strlen(alias), "w*"); 817 sprintf(alias + strlen(alias), "w*");
817 if (flags & INPUT_DEVICE_ID_MATCH_SWBIT) 818 if (flags & INPUT_DEVICE_ID_MATCH_SWBIT)
818 do_input(alias, *swbit, 0, INPUT_DEVICE_ID_SW_MAX); 819 do_input(alias, *swbit, 0, INPUT_DEVICE_ID_SW_MAX);
820 sprintf(alias + strlen(alias), "pr*");
821 if (flags & INPUT_DEVICE_ID_MATCH_PROPBIT)
822 do_input(alias, *propbit, 0, INPUT_DEVICE_ID_PROP_MAX);
819 return 1; 823 return 1;
820} 824}
821ADD_TO_DEVTABLE("input", input_device_id, do_input_entry); 825ADD_TO_DEVTABLE("input", input_device_id, do_input_entry);