when maxPacketSize has been uncommented, it did change  rx_connection struct 
behavoir,  rx_connection is being called on vos (userspace code)
Or I am not reading the header correctly? 
struct rx_connection {
    struct rx_connection *next; /*  on hash chain _or_ free list */
    struct rx_peer *peer;
#endif
#ifdef  RX_ENABLE_LOCKS
    afs_kmutex_t conn_call_lock;        /* locks conn_call_cv */
    afs_kcondvar_t conn_call_cv;
    afs_kmutex_t conn_data_lock;        /* locks packet data */
#endif
    afs_uint32 epoch;           /* Process start time of client side of 
connection */
    afs_uint32 cid;             /* Connection id (call channel is bottom bits) 
*/
    afs_int32 error;            /* If this connection is in error, this is it */
#ifdef KDUMP_RX_LOCK
    struct rx_call_rx_lock *call[RX_MAXCALLS];
#else
    struct rx_call *call[RX_MAXCALLS];
#endif
    afs_uint32 callNumber[RX_MAXCALLS]; /* Current call numbers */
    afs_uint32 serial;          /* Next outgoing packet serial number */
    afs_uint32 lastSerial;      /* # of last packet received, for computing 
skew */
    afs_int32 maxSerial;        /* largest serial number seen on incoming 
packets */
    afs_int32 maxPacketSize;   /* max packet size should be per-connection 
since */
   .........................
   ............................................


--- On Sat, 2/11/12, Simon Wilkinson <[email protected]> wrote:

From: Simon Wilkinson <[email protected]>
Subject: Re: [OpenAFS] replication over slower bandwidth
To: [email protected]
Cc: "Neil Davies" <[email protected]>, "OpenAFS Info" 
<[email protected]>, "Jeffrey Altman" <[email protected]>
Received: Saturday, February 11, 2012, 12:27 PM


On 10 Feb 2012, at 04:29, Jeffrey Altman wrote:

> That field was commented out before OpenAFS and maxPacketSize was not
> referenced anywhere in the source code.  What restoring that field to
> rx.h does is force the struct rxevent * values that follow it to become
> properly aligned in 64-bit builds.
> 
> Lack of proper alignment can really hurt.

I'm a little confused here. The System V ABI, which Linux claims to follow, 
specifies that pointers are 8 byte aligned - see Figure 3.1 of 
http://www.x86-64.org/documentation/abi.pdf

Given that your speed improvements are from vos release, this must be userspace 
code, so I'm not certain that this is an alignment issue.

Cheers,

Simon.

_______________________________________________
OpenAFS-info mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-info

Reply via email to