linux-mips.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: David Laight <David.Laight@ACULAB.COM>
To: 'Arnd Bergmann' <arnd@arndb.de>, Guo Ren <guoren@kernel.org>
Cc: linux-s390 <linux-s390@vger.kernel.org>,
	Guo Ren <guoren@linux.alibaba.com>,
	gregkh <gregkh@linuxfoundation.org>,
	Drew Fustini <drew@beagleboard.org>,
	Anup Patel <anup@brainfault.org>,
	Wang Junqiang <wangjunqiang@iscas.ac.cn>,
	the arch/x86 maintainers <x86@kernel.org>,
	"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
	"linux-csky@vger.kernel.org" <linux-csky@vger.kernel.org>,
	"inux-parisc@vger.kernel.org" <inux-parisc@vger.kernel.org>,
	"Christoph Hellwig" <hch@infradead.org>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	liush <liush@allwinnertech.com>,
	sparclinux <sparclinux@vger.kernel.org>,
	linux-riscv <linux-riscv@lists.infradead.org>,
	"open list:BROADCOM NVRAM DRIVER" <linux-mips@vger.kernel.org>,
	linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
	Christoph Hellwig <hch@lst.de>,
	Linux ARM <linux-arm-kernel@lists.infradead.org>,
	Wei Fu <wefu@redhat.com>
Subject: RE: [PATCH V3 03/17] asm-generic: compat: Cleanup duplicate definitions
Date: Thu, 20 Jan 2022 13:02:27 +0000	[thread overview]
Message-ID: <f2c1a3a10bf643d693afed6d23b3baf9@AcuMS.aculab.com> (raw)
In-Reply-To: <CAK8P3a1UmnjHk8B6hSULiKv3FKoY5BW9=4=ESerQzc+4=LR5Zw@mail.gmail.com>

From: Arnd Bergmann
> Sent: 20 January 2022 11:52
..
> As with compat_flock, the packed attribute has no impact on the layout
> here, but please drop it anyway for consistency.

Never mind the structure layout, because 'packed' allows the
structure to be aligned on any boundary it forces the compiler
to use byte memory accesses and shifts on some architectures.
This is a horrid performance penalty.

'packed' should only be specified for structures that can
occur on any address boundary.
ie basically never.

If you need to remove the implicit pad before a field (eg 64bit
fields on x64-32) then you can mark the field itself as 'packed'.
Although, in that case, putting the attribute on the type (compat_s64)
is generally cleaner.

	David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)

  reply	other threads:[~2022-01-20 13:02 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-20  7:38 [PATCH V3 03/17] asm-generic: compat: Cleanup duplicate definitions guoren
2022-01-20 11:52 ` Arnd Bergmann
2022-01-20 13:02   ` David Laight [this message]
2022-01-28  7:20   ` Guo Ren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f2c1a3a10bf643d693afed6d23b3baf9@AcuMS.aculab.com \
    --to=david.laight@aculab.com \
    --cc=anup@brainfault.org \
    --cc=arnd@arndb.de \
    --cc=drew@beagleboard.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=guoren@kernel.org \
    --cc=guoren@linux.alibaba.com \
    --cc=hch@infradead.org \
    --cc=hch@lst.de \
    --cc=inux-parisc@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-csky@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=liush@allwinnertech.com \
    --cc=palmer@dabbelt.com \
    --cc=sparclinux@vger.kernel.org \
    --cc=wangjunqiang@iscas.ac.cn \
    --cc=wefu@redhat.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).