All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] powerpc/64: implement spin loop primitives
@ 2017-06-28 12:13 Michael Ellerman
  2017-06-28 12:13 ` [PATCH 2/2] powerpc: use spin loop primitives in some functions Michael Ellerman
  2017-07-02 11:01 ` [1/2] powerpc/64: implement spin loop primitives Michael Ellerman
  0 siblings, 2 replies; 7+ messages in thread
From: Michael Ellerman @ 2017-06-28 12:13 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: npiggin

From: Nicholas Piggin <npiggin@gmail.com>

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
---
 arch/powerpc/include/asm/processor.h | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/arch/powerpc/include/asm/processor.h b/arch/powerpc/include/asm/processor.h
index c49165a7439c..832775771bd3 100644
--- a/arch/powerpc/include/asm/processor.h
+++ b/arch/powerpc/include/asm/processor.h
@@ -428,6 +428,26 @@ static inline unsigned long __pack_fe01(unsigned int fpmode)
 
 #ifdef CONFIG_PPC64
 #define cpu_relax()	do { HMT_low(); HMT_medium(); barrier(); } while (0)
+
+#define spin_begin()	HMT_low()
+
+#define spin_cpu_relax()	barrier()
+
+#define spin_cpu_yield()	spin_cpu_relax()
+
+#define spin_end()	HMT_medium()
+
+#define spin_until_cond(cond)					\
+do {								\
+	if (unlikely(!(cond))) {				\
+		spin_begin();					\
+		do {						\
+			spin_cpu_relax();			\
+		} while (!(cond));				\
+		spin_end();					\
+	}							\
+} while (0)
+
 #else
 #define cpu_relax()	barrier()
 #endif
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/2] powerpc: use spin loop primitives in some functions
  2017-06-28 12:13 [PATCH 1/2] powerpc/64: implement spin loop primitives Michael Ellerman
@ 2017-06-28 12:13 ` Michael Ellerman
  2017-07-02  9:30   ` kbuild test robot
  2017-07-02 11:01 ` [1/2] powerpc/64: implement spin loop primitives Michael Ellerman
  1 sibling, 1 reply; 7+ messages in thread
From: Michael Ellerman @ 2017-06-28 12:13 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: npiggin

From: Nicholas Piggin <npiggin@gmail.com>

Use the different spin loop primitives in some simple powerpc
spin loops, including those which will spin as a common case.

This will help to test the spin loop primitives before more
conversions are done.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
---
 arch/powerpc/include/asm/delay.h | 15 +++++++++++----
 arch/powerpc/kernel/smp.c        |  3 +--
 arch/powerpc/kernel/time.c       |  6 ++++--
 arch/powerpc/mm/hash_native_64.c |  4 +++-
 4 files changed, 19 insertions(+), 9 deletions(-)

diff --git a/arch/powerpc/include/asm/delay.h b/arch/powerpc/include/asm/delay.h
index 52e4d54da2a9..b028788bd55d 100644
--- a/arch/powerpc/include/asm/delay.h
+++ b/arch/powerpc/include/asm/delay.h
@@ -58,11 +58,18 @@ extern void udelay(unsigned long usecs);
 	typeof(condition) __ret;                                               \
 	unsigned long __loops = tb_ticks_per_usec * timeout;                   \
 	unsigned long __start = get_tbl();                                     \
-	while (!(__ret = (condition)) && (tb_ticks_since(__start) <= __loops)) \
-		if (delay)                                                     \
+                                                                               \
+	if (delay) {                                                           \
+		while (!(__ret = (condition)) &&                               \
+				(tb_ticks_since(__start) <= __loops))          \
 			udelay(delay);                                         \
-		else                                                           \
-			cpu_relax();                                           \
+	} else {                                                               \
+		spin_begin();                                                  \
+		while (!(__ret = (condition)) &&                               \
+				(tb_ticks_since(__start) <= __loops))          \
+			spin_cpu_relax();                                      \
+		spin_end();                                                    \
+	}                                                                      \
 	if (!__ret)                                                            \
 		__ret = (condition);                                           \
 	__ret;		                                                       \
diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c
index 418019728efa..67d89b4e777c 100644
--- a/arch/powerpc/kernel/smp.c
+++ b/arch/powerpc/kernel/smp.c
@@ -767,8 +767,7 @@ int __cpu_up(unsigned int cpu, struct task_struct *tidle)
 		smp_ops->give_timebase();
 
 	/* Wait until cpu puts itself in the online & active maps */
-	while (!cpu_online(cpu))
-		cpu_relax();
+	spin_until_cond(cpu_online(cpu));
 
 	return 0;
 }
diff --git a/arch/powerpc/kernel/time.c b/arch/powerpc/kernel/time.c
index 0cc0dad905d5..e75844d76992 100644
--- a/arch/powerpc/kernel/time.c
+++ b/arch/powerpc/kernel/time.c
@@ -442,6 +442,7 @@ void __delay(unsigned long loops)
 	unsigned long start;
 	int diff;
 
+	spin_begin();
 	if (__USE_RTC()) {
 		start = get_rtcl();
 		do {
@@ -449,13 +450,14 @@ void __delay(unsigned long loops)
 			diff = get_rtcl() - start;
 			if (diff < 0)
 				diff += 1000000000;
+			spin_cpu_relax();
 		} while (diff < loops);
 	} else {
 		start = get_tbl();
 		while (get_tbl() - start < loops)
-			HMT_low();
-		HMT_medium();
+			spin_cpu_relax();
 	}
+	spin_end();
 }
 EXPORT_SYMBOL(__delay);
 
diff --git a/arch/powerpc/mm/hash_native_64.c b/arch/powerpc/mm/hash_native_64.c
index bdaac28193f7..ad0ba1da1b79 100644
--- a/arch/powerpc/mm/hash_native_64.c
+++ b/arch/powerpc/mm/hash_native_64.c
@@ -184,8 +184,10 @@ static inline void native_lock_hpte(struct hash_pte *hptep)
 	while (1) {
 		if (!test_and_set_bit_lock(HPTE_LOCK_BIT, word))
 			break;
+		spin_begin();
 		while(test_bit(HPTE_LOCK_BIT, word))
-			cpu_relax();
+			spin_cpu_relax();
+		spin_end();
 	}
 }
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/2] powerpc: use spin loop primitives in some functions
  2017-06-28 12:13 ` [PATCH 2/2] powerpc: use spin loop primitives in some functions Michael Ellerman
@ 2017-07-02  9:30   ` kbuild test robot
  2017-07-02 15:42     ` issue with kernel 4.12.rc6 addnote -kernel dont build luigi burdo
  0 siblings, 1 reply; 7+ messages in thread
From: kbuild test robot @ 2017-07-02  9:30 UTC (permalink / raw)
  To: Michael Ellerman; +Cc: kbuild-all, linuxppc-dev, npiggin

[-- Attachment #1: Type: text/plain, Size: 5436 bytes --]

Hi Nicholas,

[auto build test ERROR on powerpc/next]
[also build test ERROR on v4.12-rc7 next-20170630]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Michael-Ellerman/powerpc-64-implement-spin-loop-primitives/20170630-210421
base:   https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git next
config: powerpc-ppc6xx_defconfig (attached as .config)
compiler: powerpc-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=powerpc 

All error/warnings (new ones prefixed by >>):

   In file included from arch/powerpc/include/asm/io.h:32:0,
                    from arch/powerpc/include/asm/book3s/32/pgtable.h:95,
                    from arch/powerpc/include/asm/book3s/pgtable.h:7,
                    from arch/powerpc/include/asm/pgtable.h:16,
                    from include/linux/mm.h:70,
                    from drivers/soc/fsl/qe/qe.c:23:
   drivers/soc/fsl/qe/qe.c: In function 'qe_issue_cmd':
>> arch/powerpc/include/asm/delay.h:67:3: error: implicit declaration of function 'spin_begin' [-Werror=implicit-function-declaration]
      spin_begin();                                                  \
      ^
>> drivers/soc/fsl/qe/qe.c:142:8: note: in expansion of macro 'spin_event_timeout'
     ret = spin_event_timeout((in_be32(&qe_immr->cp.cecr) & QE_CR_FLG) == 0,
           ^~~~~~~~~~~~~~~~~~
>> arch/powerpc/include/asm/delay.h:70:4: error: implicit declaration of function 'spin_cpu_relax' [-Werror=implicit-function-declaration]
       spin_cpu_relax();                                      \
       ^
>> drivers/soc/fsl/qe/qe.c:142:8: note: in expansion of macro 'spin_event_timeout'
     ret = spin_event_timeout((in_be32(&qe_immr->cp.cecr) & QE_CR_FLG) == 0,
           ^~~~~~~~~~~~~~~~~~
>> arch/powerpc/include/asm/delay.h:71:3: error: implicit declaration of function 'spin_end' [-Werror=implicit-function-declaration]
      spin_end();                                                    \
      ^
>> drivers/soc/fsl/qe/qe.c:142:8: note: in expansion of macro 'spin_event_timeout'
     ret = spin_event_timeout((in_be32(&qe_immr->cp.cecr) & QE_CR_FLG) == 0,
           ^~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from arch/powerpc/include/asm/io.h:32:0,
                    from arch/powerpc/include/asm/book3s/32/pgtable.h:95,
                    from arch/powerpc/include/asm/book3s/pgtable.h:7,
                    from arch/powerpc/include/asm/pgtable.h:16,
                    from include/linux/mm.h:70,
                    from drivers/soc//fsl/qe/qe.c:23:
   drivers/soc//fsl/qe/qe.c: In function 'qe_issue_cmd':
>> arch/powerpc/include/asm/delay.h:67:3: error: implicit declaration of function 'spin_begin' [-Werror=implicit-function-declaration]
      spin_begin();                                                  \
      ^
   drivers/soc//fsl/qe/qe.c:142:8: note: in expansion of macro 'spin_event_timeout'
     ret = spin_event_timeout((in_be32(&qe_immr->cp.cecr) & QE_CR_FLG) == 0,
           ^~~~~~~~~~~~~~~~~~
>> arch/powerpc/include/asm/delay.h:70:4: error: implicit declaration of function 'spin_cpu_relax' [-Werror=implicit-function-declaration]
       spin_cpu_relax();                                      \
       ^
   drivers/soc//fsl/qe/qe.c:142:8: note: in expansion of macro 'spin_event_timeout'
     ret = spin_event_timeout((in_be32(&qe_immr->cp.cecr) & QE_CR_FLG) == 0,
           ^~~~~~~~~~~~~~~~~~
>> arch/powerpc/include/asm/delay.h:71:3: error: implicit declaration of function 'spin_end' [-Werror=implicit-function-declaration]
      spin_end();                                                    \
      ^
   drivers/soc//fsl/qe/qe.c:142:8: note: in expansion of macro 'spin_event_timeout'
     ret = spin_event_timeout((in_be32(&qe_immr->cp.cecr) & QE_CR_FLG) == 0,
           ^~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors

vim +/spin_begin +67 arch/powerpc/include/asm/delay.h

    61	                                                                               \
    62		if (delay) {                                                           \
    63			while (!(__ret = (condition)) &&                               \
    64					(tb_ticks_since(__start) <= __loops))          \
    65				udelay(delay);                                         \
    66		} else {                                                               \
  > 67			spin_begin();                                                  \
    68			while (!(__ret = (condition)) &&                               \
    69					(tb_ticks_since(__start) <= __loops))          \
  > 70				spin_cpu_relax();                                      \
  > 71			spin_end();                                                    \
    72		}                                                                      \
    73		if (!__ret)                                                            \
    74			__ret = (condition);                                           \

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 29061 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [1/2] powerpc/64: implement spin loop primitives
  2017-06-28 12:13 [PATCH 1/2] powerpc/64: implement spin loop primitives Michael Ellerman
  2017-06-28 12:13 ` [PATCH 2/2] powerpc: use spin loop primitives in some functions Michael Ellerman
@ 2017-07-02 11:01 ` Michael Ellerman
  1 sibling, 0 replies; 7+ messages in thread
From: Michael Ellerman @ 2017-07-02 11:01 UTC (permalink / raw)
  To: Michael Ellerman, linuxppc-dev; +Cc: npiggin

On Wed, 2017-06-28 at 12:13:41 UTC, Michael Ellerman wrote:
> From: Nicholas Piggin <npiggin@gmail.com>
> 
> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>

Series applied to powerpc next.

https://git.kernel.org/powerpc/c/ede8e2bbb0eb3370e4dc5484b40eb2

cheers

^ permalink raw reply	[flat|nested] 7+ messages in thread

* issue with kernel 4.12.rc6 addnote -kernel dont build
  2017-07-02  9:30   ` kbuild test robot
@ 2017-07-02 15:42     ` luigi burdo
  2017-07-10 11:01       ` Michael Ellerman
  0 siblings, 1 reply; 7+ messages in thread
From: luigi burdo @ 2017-07-02 15:42 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: kbuild-all


[-- Attachment #1.1: Type: text/plain, Size: 162 bytes --]


Hi all, kernel here is not building.

attached file will explain better than my poor english.

Host Machine BE Qoriq e5500  16GB ram


regards

Luigi

[-- Attachment #1.2: Type: text/html, Size: 596 bytes --]

[-- Attachment #2: addnote.txt --]
[-- Type: text/plain, Size: 56084 bytes --]

 HOSTCC  arch/powerpc/boot/addnote
arch/powerpc/boot/addnote.c: In function ‘main’:
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c: In function ‘main’:
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:183:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:188:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:206:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_OFFSET, ns);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:72:39: note: in definition of macro ‘PUT_16BE’
 #define PUT_16BE(off, v)(buf[off] = ((v) >> 8) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:75:47: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                                               ^
arch/powerpc/boot/addnote.c:73:23: note: in definition of macro ‘PUT_16BE’
     buf[(off) + 1] = (v) & 0xff)
                       ^
arch/powerpc/boot/addnote.c:75:27: note: in expansion of macro ‘PUT_32BE’
 #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \
                           ^~~~~~~~
arch/powerpc/boot/addnote.c:94:50: note: in expansion of macro ‘PUT_64BE’
 #define PUT_64(off, v)  (e_data == ELFDATA2MSB ? PUT_64BE(off, v) : \
                                                  ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:82:39: note: in definition of macro ‘PUT_16LE’
 #define PUT_16LE(off, v) (buf[off] = (v) & 0xff, \
                                       ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
arch/powerpc/boot/addnote.c:85:73: warning: right shift count >= width of type [-Wshift-count-overflow]
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                                         ^
arch/powerpc/boot/addnote.c:83:25: note: in definition of macro ‘PUT_16LE’
      buf[(off) + 1] = ((v) >> 8) & 0xff)
                         ^
arch/powerpc/boot/addnote.c:85:49: note: in expansion of macro ‘PUT_32LE’
 #define PUT_64LE(off, v) (PUT_32LE((off), (v)), PUT_32LE((off) + 4, (v) >> 32L))
                                                 ^~~~~~~~
arch/powerpc/boot/addnote.c:95:5: note: in expansion of macro ‘PUT_64LE’
     PUT_64LE(off, v))
     ^~~~~~~~
arch/powerpc/boot/addnote.c:211:3: note: in expansion of macro ‘PUT_64’
   PUT_64(ph + PH_FILESZ, nnote2);
   ^~~~~~
  CC      crypto/ghash-generic.mod.o
mv: cannot move 'arch/powerpc/boot/.addnote.tmp' to 'arch/powerpc/boot/.addnote.cmd': No such file or directory
scripts/Makefile.host:107: recipe for target 'arch/powerpc/boot/addnote' failed
make[1]: *** [arch/powerpc/boot/addnote] Error 1


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: issue with kernel 4.12.rc6 addnote -kernel dont build
  2017-07-02 15:42     ` issue with kernel 4.12.rc6 addnote -kernel dont build luigi burdo
@ 2017-07-10 11:01       ` Michael Ellerman
  2017-07-13 10:09         ` luigi burdo
  0 siblings, 1 reply; 7+ messages in thread
From: Michael Ellerman @ 2017-07-10 11:01 UTC (permalink / raw)
  To: luigi burdo, linuxppc-dev; +Cc: kbuild-all

luigi burdo <intermediadc@hotmail.com> writes:

> Hi all, kernel here is not building.

Did it just stop working? That code is from 2014?

> attached file will explain better than my poor english.
>
> Host Machine BE Qoriq e5500  16GB ram

What userspace are you running? Is it 32-bit ?

>  HOSTCC  arch/powerpc/boot/addnote
   ^^^^^^
   What compiler is that?

Building with V=3D1 should show you.

> arch/powerpc/boot/addnote.c: In function =E2=80=98main=E2=80=99:
> arch/powerpc/boot/addnote.c:75:47: warning: right shift count >=3D width =
of type [-Wshift-count-overflow]
>  #define PUT_64BE(off, v)((PUT_32BE((off), (v) >> 32L), \

These warnings seem like they're correct, but that code should never
actually run on 32-bit so it should be harmless.

> mv: cannot move 'arch/powerpc/boot/.addnote.tmp' to 'arch/powerpc/boot/.a=
ddnote.cmd': No such file or directory
> scripts/Makefile.host:107: recipe for target 'arch/powerpc/boot/addnote' =
failed
> make[1]: *** [arch/powerpc/boot/addnote] Error 1

But they're only warnings, so they shouldn't be breaking the build AFAICS.

cheers

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: issue with kernel 4.12.rc6 addnote -kernel dont build
  2017-07-10 11:01       ` Michael Ellerman
@ 2017-07-13 10:09         ` luigi burdo
  0 siblings, 0 replies; 7+ messages in thread
From: luigi burdo @ 2017-07-13 10:09 UTC (permalink / raw)
  To: Michael Ellerman, linuxppc-dev; +Cc: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 894 bytes --]


Hi Michael,
sorry for late reply

>Did it just stop working? That code is from 2014?

exit without right kenel build  with the error that add in the log last time.


>> Host Machine BE Qoriq e5500  16GB ram
>What userspace are you running? Is it 32-bit ?

yes 32 bit OS Ubuntu Mate 16.10 , with 64 bit kernel

>>  HOSTCC  arch/powerpc/boot/addnote
   ^^^^^^
>   What compiler is that?

 gcc 6.2.0
https://launchpad.net/ubuntu/yakkety/+package/gcc-6


>Building with V=1 should show you.

i will check it and report.


>These warnings seem like they're correct, but that code should never
>But they're only warnings, so they shouldn't be breaking the build AFAICS.

 Can be this issue associated with a module? i have this feeling because last time i have successiful
build the kernel but without some lan modules (but i cant have lan working).
Thanks
Luigi


[-- Attachment #2: Type: text/html, Size: 2173 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-07-13 10:09 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-28 12:13 [PATCH 1/2] powerpc/64: implement spin loop primitives Michael Ellerman
2017-06-28 12:13 ` [PATCH 2/2] powerpc: use spin loop primitives in some functions Michael Ellerman
2017-07-02  9:30   ` kbuild test robot
2017-07-02 15:42     ` issue with kernel 4.12.rc6 addnote -kernel dont build luigi burdo
2017-07-10 11:01       ` Michael Ellerman
2017-07-13 10:09         ` luigi burdo
2017-07-02 11:01 ` [1/2] powerpc/64: implement spin loop primitives Michael Ellerman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.