VirtualBox

Changeset 101080 in vbox for trunk/src/VBox/Additions


Ignore:
Timestamp:
Sep 11, 2023 2:06:52 PM (17 months ago)
Author:
vboxsync
Message:

Additions: Linux: vboxsf: Introduce initial support for kernel 6.6, bugref:10524.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/linux/sharedfolders/utils.c

    r99420 r101080  
    290290}
    291291
     292/**
     293 * Update inode timestamps.
     294 *
     295 * @param pInode    Linux inode object.
     296 # @param pObjInfo  VBox vboxsf object.
     297 */
     298static void vbsf_update_inode_timestamps(struct inode *pInode, PSHFLFSOBJINFO pObjInfo)
     299{
     300#if RTLNX_VER_MIN(6,6,0)
     301    struct timespec64 ts;
     302    vbsf_time_to_linux(&ts, &pObjInfo->ChangeTime);
     303    inode_set_ctime_to_ts(pInode, ts);
     304#else
     305    vbsf_time_to_linux(&pInode->i_atime, &pObjInfo->AccessTime);
     306    vbsf_time_to_linux(&pInode->i_ctime, &pObjInfo->ChangeTime);
     307    vbsf_time_to_linux(&pInode->i_mtime, &pObjInfo->ModificationTime);
     308#endif
     309}
    292310
    293311/**
     
    349367    inode->i_blocks = (pObjInfo->cbAllocated + 511) / 512;
    350368
    351     vbsf_time_to_linux(&inode->i_atime, &pObjInfo->AccessTime);
    352     vbsf_time_to_linux(&inode->i_ctime, &pObjInfo->ChangeTime);
    353     vbsf_time_to_linux(&inode->i_mtime, &pObjInfo->ModificationTime);
     369    vbsf_update_inode_timestamps(inode, pObjInfo);
     370
    354371    sf_i->BirthTime = pObjInfo->BirthTime;
    355372    sf_i->ModificationTime = pObjInfo->ModificationTime;
     
    417434     * Update the timestamps.
    418435     */
    419     vbsf_time_to_linux(&pInode->i_atime, &pObjInfo->AccessTime);
    420     vbsf_time_to_linux(&pInode->i_ctime, &pObjInfo->ChangeTime);
    421     vbsf_time_to_linux(&pInode->i_mtime, &pObjInfo->ModificationTime);
     436    vbsf_update_inode_timestamps(pInode, pObjInfo);
    422437    pInodeInfo->BirthTime = pObjInfo->BirthTime;
    423438
     
    744759    if (rc == 0) {
    745760        /* Do generic filling in of info. */
    746 # if RTLNX_VER_MIN(6,3,0)
     761# if RTLNX_VER_MIN(6,6,0)
     762        generic_fillattr(idmap, request_mask, dentry->d_inode, kstat);
     763# elif RTLNX_VER_MIN(6,3,0)
    747764        generic_fillattr(idmap, dentry->d_inode, kstat);
    748765# elif RTLNX_VER_MIN(5,12,0)
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette