On Thu, 26 Jan 2012, Alan Cox wrote:

On 01/26/2012 03:55, Luigi Rizzo wrote:

Log:
...
   Netmap-related changes for ixgbe:
...
+#define NKR_PENDINTR   0x1     // Pending interrupt.
        u_int nkr_num_slots;

        int     nkr_hwofs;      /* offset between NIC and netmap ring */
        struct netmap_adapter *na;       // debugging
        struct selinfo si; /* poll/select wait queue */
-};
+} __attribute__((__aligned__(64)));

The machine-dependent param.h defines CACHE_LINE_SIZE for use in situations like this.

Also, the machine-independent cdefs.h defines __aligned() for use
in situations like this.  All cases that use CACHE_LINE_SIZE in an
alignment statement spell the alignment statement correctly.  The
only hard-coded __attribute__() in a line matching CACHE_LINE_SIZE
is for CVMX_CACHE_LINE_SIZE in contrib/octeon-sdk/cvmx-utils.h.
Perhaps contrib'ed code needs to use hard-coded gccisms instead of
hard-coded FreeBSDisms.

Bruce
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to