[LU-11770] preserve kernel API when T10-PI patches are applied Created: 12/Dec/18  Updated: 01/Oct/22  Resolved: 19/Feb/19

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.12.0
Fix Version/s: Lustre 2.13.0, Lustre 2.12.4

Type: Bug Priority: Minor
Reporter: Andreas Dilger Assignee: Andreas Dilger
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Related
is related to LU-11712 Lustre build fails when CONFIG_BLK_DE... Resolved
is related to LU-10472 Data Integrity(T10PI) support for Lustre Resolved
is related to LU-11822 what does this mean nbp16-OST0004: un... Resolved
Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

Preserve the existing kernel API when the T10-PI patches are applied, so that any other modules using this interface do not break.

In particular, keep the EXPORT_SYMBOL(bio_integrity_alloc) and EXPORT_SYMBOL(bio_integrity_prep) in place.

In struct bio_integrity_payload put *bip_generate_fn and *bip_verify_fn after *bip_vec since that field is directly accessed by callers. In struct blk_integrity_exchg the bi_idx field only needs to be an unsigned short since the bio->bi_idx and bio->bi_vcnt values used with it are also unsigned short, which saves 8 bytes of padding in the struct and puts the added fields at the end to preserve the structure field alignment.



 Comments   
Comment by Gerrit Updater [ 12/Dec/18 ]

Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/33840
Subject: LU-11770 osd-ldiskfs: preserve bio_integrity API
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: c0c63055e09269216b7d3ad20a2403f2050458c0

Comment by Gerrit Updater [ 12/Dec/18 ]

Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/33841
Subject: LU-11770 osd-ldiskfs: clean up inline macro usage
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: e372c96dc62cf3acc622909b57201256a26e268b

Comment by Gerrit Updater [ 17/Dec/18 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/33840/
Subject: LU-11770 osd-ldiskfs: preserve bio_integrity API
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: e4a9ea67935e14cfcee84f15162ab9a9673b0adf

Comment by Gerrit Updater [ 27/Dec/18 ]

Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/33923
Subject: LU-11770 osc: allow build without blk_integrity or crc-t10pi
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 9f873b42c36b95c7a87057fe52d667cc66e0baf9

Comment by Gerrit Updater [ 30/Jan/19 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/33841/
Subject: LU-11770 osd-ldiskfs: clean up inline macro usage
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: fa30d1efff93c6e11b7cf40c966f804c4718fbe8

Comment by Gerrit Updater [ 01/Feb/19 ]

Li Dongyang (dongyangli@ddn.com) uploaded a new patch: https://review.whamcloud.com/34156
Subject: LU-11770 osc: allow build without blk_integrity or crc-t10pi
Project: fs/lustre-release
Branch: b2_12
Current Patch Set: 1
Commit: 4fb605e4a654f74387758e9d32a03fe86f26522f

Comment by Gerrit Updater [ 18/Feb/19 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/33923/
Subject: LU-11770 osc: allow build without blk_integrity or crc-t10pi
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: e0fb3133372e5bff434ac7a467304d9ba954bac6

Comment by Peter Jones [ 19/Feb/19 ]

Landed for 2.13

Comment by Gerrit Updater [ 19/Mar/19 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/34156/
Subject: LU-11770 osc: allow build without blk_integrity or crc-t10pi
Project: fs/lustre-release
Branch: b2_12
Current Patch Set:
Commit: b14e6617b9b7181b136a0500bb6aebc730802c3c

Comment by Gerrit Updater [ 09/Jan/20 ]

Li Dongyang (dongyangli@ddn.com) uploaded a new patch: https://review.whamcloud.com/37167
Subject: LU-11770 misc: fix bdev_integrity_enabled definition
Project: fs/lustre-release
Branch: b2_12
Current Patch Set: 1
Commit: f96fcf1a8d77920e302da1c46409c03c250242cc

Comment by Gerrit Updater [ 17/Jan/20 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/37167/
Subject: LU-11770 misc: fix bdev_integrity_enabled definition
Project: fs/lustre-release
Branch: b2_12
Current Patch Set:
Commit: 6db0c4f08225f5907318aa27970f42896d1da94f

Comment by Gerrit Updater [ 29/Sep/22 ]

"Jian Yu <yujian@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/48701
Subject: LU-11770 osd-ldiskfs: clean up inline macro usage
Project: fs/lustre-release
Branch: b2_12
Current Patch Set: 1
Commit: 4f300e04a662ffd057f253bd795ee14762d35dbe

Generated at Sat Feb 10 02:46:46 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.