Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-25 Thread Clément Léger
On 25/09/2023 20:04, Clément Léger wrote: > > > On 25/09/2023 18:04, Beau Belgrave wrote: >> On Mon, Sep 25, 2023 at 09:53:16AM +0200, Clément Léger wrote: >>> >>> >>> On 22/09/2023 21:22, Beau Belgrave wrote: On Tue, Sep 19, 2023 at 02:59:12PM +0200, Clément Léger wrote: > >

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-25 Thread Clément Léger
On 25/09/2023 18:04, Beau Belgrave wrote: > On Mon, Sep 25, 2023 at 09:53:16AM +0200, Clément Léger wrote: >> >> >> On 22/09/2023 21:22, Beau Belgrave wrote: >>> On Tue, Sep 19, 2023 at 02:59:12PM +0200, Clément Léger wrote: On 14/09/2023 19:29, Steven Rostedt wrote: > On Thu,

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-25 Thread Beau Belgrave
On Mon, Sep 25, 2023 at 09:53:16AM +0200, Clément Léger wrote: > > > On 22/09/2023 21:22, Beau Belgrave wrote: > > On Tue, Sep 19, 2023 at 02:59:12PM +0200, Clément Léger wrote: > >> > >> > >> On 14/09/2023 19:29, Steven Rostedt wrote: > >>> On Thu, 14 Sep 2023 13:17:00 -0400 > >>> Steven Rostedt

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-25 Thread Clément Léger
On 22/09/2023 22:00, Beau Belgrave wrote: > On Tue, Sep 19, 2023 at 02:59:12PM +0200, Clément Léger wrote: >> >> >> On 14/09/2023 19:29, Steven Rostedt wrote: >>> On Thu, 14 Sep 2023 13:17:00 -0400 >>> Steven Rostedt wrote: >>> Now lets look at big endian layout: uaddr = 0xbeef0

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-25 Thread Clément Léger
On 22/09/2023 21:22, Beau Belgrave wrote: > On Tue, Sep 19, 2023 at 02:59:12PM +0200, Clément Léger wrote: >> >> >> On 14/09/2023 19:29, Steven Rostedt wrote: >>> On Thu, 14 Sep 2023 13:17:00 -0400 >>> Steven Rostedt wrote: >>> Now lets look at big endian layout: uaddr = 0xbeef0

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-22 Thread Beau Belgrave
On Tue, Sep 19, 2023 at 02:59:12PM +0200, Clément Léger wrote: > > > On 14/09/2023 19:29, Steven Rostedt wrote: > > On Thu, 14 Sep 2023 13:17:00 -0400 > > Steven Rostedt wrote: > > > >> Now lets look at big endian layout: > >> > >> uaddr = 0xbeef0004 > >> enabler = 1; > >> > >> memory at 0xb

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-22 Thread Beau Belgrave
On Tue, Sep 19, 2023 at 02:59:12PM +0200, Clément Léger wrote: > > > On 14/09/2023 19:29, Steven Rostedt wrote: > > On Thu, 14 Sep 2023 13:17:00 -0400 > > Steven Rostedt wrote: > > > >> Now lets look at big endian layout: > >> > >> uaddr = 0xbeef0004 > >> enabler = 1; > >> > >> memory at 0xb

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-19 Thread Clément Léger
On 14/09/2023 19:29, Steven Rostedt wrote: > On Thu, 14 Sep 2023 13:17:00 -0400 > Steven Rostedt wrote: > >> Now lets look at big endian layout: >> >> uaddr = 0xbeef0004 >> enabler = 1; >> >> memory at 0xbeef: 00 00 00 00 00 00 00 02 >> ^ >>

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-18 Thread Clément Léger
On 17/09/2023 23:09, David Laight wrote: > From: Clément Léger >> Sent: 14 September 2023 14:11 >> >> enabler->uaddr can be aligned on 32 or 64 bits. If aligned on 32 bits, >> this will result in a misaligned access on 64 bits architectures since >> set_bit()/clear_bit() are expecting an unsigne

RE: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-17 Thread David Laight
From: Clément Léger > Sent: 14 September 2023 14:11 > > enabler->uaddr can be aligned on 32 or 64 bits. If aligned on 32 bits, > this will result in a misaligned access on 64 bits architectures since > set_bit()/clear_bit() are expecting an unsigned long (aligned) pointer. > On architecture that d

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-17 Thread Clément Léger
On 15/09/2023 04:54, Masami Hiramatsu (Google) wrote: > On Thu, 14 Sep 2023 15:11:02 +0200 > Clément Léger wrote: > >> enabler->uaddr can be aligned on 32 or 64 bits. If aligned on 32 bits, >> this will result in a misaligned access on 64 bits architectures since >> set_bit()/clear_bit() are e

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-14 Thread Google
On Thu, 14 Sep 2023 15:11:02 +0200 Clément Léger wrote: > enabler->uaddr can be aligned on 32 or 64 bits. If aligned on 32 bits, > this will result in a misaligned access on 64 bits architectures since > set_bit()/clear_bit() are expecting an unsigned long (aligned) pointer. > On architecture tha

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-14 Thread Clément Léger
On 14/09/2023 18:42, Beau Belgrave wrote: > On Thu, Sep 14, 2023 at 03:11:02PM +0200, Clément Léger wrote: >> enabler->uaddr can be aligned on 32 or 64 bits. If aligned on 32 bits, >> this will result in a misaligned access on 64 bits architectures since >> set_bit()/clear_bit() are expecting an

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-14 Thread Clément Léger
On 14/09/2023 19:29, Steven Rostedt wrote: > On Thu, 14 Sep 2023 13:17:00 -0400 > Steven Rostedt wrote: > >> Now lets look at big endian layout: >> >> uaddr = 0xbeef0004 >> enabler = 1; >> >> memory at 0xbeef: 00 00 00 00 00 00 00 02 >> ^ >>

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-14 Thread Steven Rostedt
On Thu, 14 Sep 2023 13:17:00 -0400 Steven Rostedt wrote: > Now lets look at big endian layout: > > uaddr = 0xbeef0004 > enabler = 1; > > memory at 0xbeef: 00 00 00 00 00 00 00 02 > ^ > addr: 0xbeef0004 > >

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-14 Thread Steven Rostedt
On Thu, 14 Sep 2023 15:11:02 +0200 Clément Léger wrote: > @@ -511,13 +511,19 @@ static int user_event_enabler_write(struct > user_event_mm *mm, > } > > kaddr = kmap_local_page(page); > + > + bit_offset = uaddr & (sizeof(unsigned long) - 1); > + if (bit_offset) { > +

Re: [PATCH] tracing/user_events: align uaddr on unsigned long alignment

2023-09-14 Thread Beau Belgrave
On Thu, Sep 14, 2023 at 03:11:02PM +0200, Clément Léger wrote: > enabler->uaddr can be aligned on 32 or 64 bits. If aligned on 32 bits, > this will result in a misaligned access on 64 bits architectures since > set_bit()/clear_bit() are expecting an unsigned long (aligned) pointer. > On architectur