Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1972 commits
Select commit Hold shift + click to select a range
9c4a34b
json: move keystore operations out of the JSON parser
igaw Oct 10, 2024
e36b430
test: add pre-shared key json tests
igaw Oct 10, 2024
f23ae8c
tree: move dhchap and tls sysfs parser into separate functions
igaw Oct 15, 2024
b9f08d5
tree: read tls_configured_key and tls_keyring from sysfs
igaw Oct 16, 2024
6e8e03a
linux: export keys to config
igaw Oct 16, 2024
2201d13
linux: handle key import correctly
igaw Oct 17, 2024
6b76c10
fabrics: rename first argument for argument macros
igaw Oct 21, 2024
e0db450
fabrics: use hex numbers when generating command line options
igaw Oct 21, 2024
0ba11d2
fabrics: add ctrl connect interface
igaw Oct 21, 2024
5b4c2cb
fabrics: fix map error level in __nvmf_add_ctrl
igaw Oct 21, 2024
dd1daf3
util: added error code for ENOKEY
igaw Oct 22, 2024
e48845e
linux: fixup PSK HMAC type '0' handling
hreinecke Oct 18, 2024
2c0adc1
type: Added enums for ANSAN and RGCNS bit of OAES field
arbaz404 Oct 23, 2024
26a89d5
types: add NVMe 2.1 get log page LIDs
ikegami-t Oct 27, 2024
17cead2
types: add struct nvme_id_ctrl_nvm ver and lbamqf member variables
ikegami-t Oct 25, 2024
f8f82ab
tree: do no export tls keys when not provided by user
igaw Oct 28, 2024
6f13888
json: do not escape strings when printing the configuration
igaw Oct 28, 2024
6a7b777
types: Add ETPVDS and SSI fields of sanitize status log
francispravin5 Oct 30, 2024
f3d4599
prefix: Use Request or Response Length in DLEN and DOFF for MI
chorkin Sep 6, 2024
e533127
tests: mi: Add test for dlen/doff values through raw admin_xfer inter…
jk-ozlabs Oct 31, 2024
ea83b9e
doc: Regenerate all docs for v1.11
igaw Oct 31, 2024
2b3cb17
Release v1.11
igaw Oct 31, 2024
81073a1
linux: fix derive_psk_digest OpenSSL 1.1 version
igaw Oct 31, 2024
89ea2b7
build: Add token for coverage test
MaisenbacherD Oct 31, 2024
1144da5
linux: do not return w/o OpenSSL support enabled
igaw Nov 4, 2024
f1ddb96
types: Add id-ctrl CTRATT.RHII enum
sc108-lee Nov 13, 2024
21f5e86
linux: do not do any keyring ops when no key is provided
igaw Nov 15, 2024
2d92c35
fabrics: do not attempt to import keys if tls is not enabled
igaw Nov 15, 2024
18d82fb
doc: Regenerate all docs for v1.11.1
igaw Nov 15, 2024
cec9fea
Release v1.11.1
igaw Nov 15, 2024
07ef70d
build(deps): bump codecov/codecov-action from 4 to 5
dependabot[bot] Nov 18, 2024
cbbfdd0
test/mock: pass thru unknown ioctls
igaw Nov 25, 2024
dad5a98
types: add NVME_ID_CTRL_NVM_LBAMQF definitions
ikegami-t Nov 24, 2024
3e293a1
tests: do not unconditionally depend on dlsym
igaw Dec 2, 2024
5f89dfd
rpm: use defined prefix from meson
sc108-lee Nov 26, 2024
b50a076
types: add enum for the fields added in TP4160
francispravin5 Nov 26, 2024
80775de
ioctl,types: telemetry log update based NVMe v2.1
sc108-lee Nov 29, 2024
693e183
mi: telemetry log update based NVMe v2.1
sc108-lee Dec 3, 2024
0460e17
types: Live Migration
NateThornton Nov 13, 2024
5011a3f
types: Update id-ctrl field based on NVMe 2.1 spec
sc108-lee Nov 13, 2024
1fe7a1e
types: use __le16 instead of __u16 for data fields
sc108-lee Dec 6, 2024
d5b39ad
types: Add enum for nvme_id_ctrl.trattr
sc108-lee Dec 7, 2024
27ed889
ioctl: Live Migration
NateThornton Nov 13, 2024
289183a
Update mctp APIs to mctp codeconstruct version 2.0
ThuBaNguyen Dec 13, 2024
4ef59f4
types: add enum for the fields added in TP4058
francispravin5 Dec 19, 2024
d4bfed4
tests: mock io_uring_get_probe
996refuse Dec 17, 2024
adee4ed
ioctl: get_log_page by nvme uring cmd
996refuse Dec 5, 2024
8346798
ioctl: fix io_uring whitespace damages
igaw Dec 20, 2024
f2b9bd3
build: bump wraps
igaw Dec 20, 2024
7da47db
types: fix lm data field unsigned values to little endian
ikegami-t Dec 28, 2024
2d38fe7
types: error information log entry status field definitions
ikegami-t Dec 31, 2024
79ec876
types: add NVMe 2.1 identify power state descriptor fields
ikegami-t Dec 25, 2024
2775cab
types: Add NVMe 2.1 feature ID definitions
ikegami-t Jan 5, 2025
6a0da69
types: add NVMe 2.1 admin command opcode definitions
ikegami-t Jan 5, 2025
7b9f86f
types: add NVMe 2.1 identify command CNS definitions
ikegami-t Jan 6, 2025
2a0e220
ioctl: add nvme_get_endgid_log()
ikegami-t Jan 4, 2025
454b5e0
ioctl: add nvme_get_log_rotational_media_info()
ikegami-t Jan 4, 2025
b220e1e
ioctl: add nvme_get_log_dispersed_ns_participating_nss()
ikegami-t Jan 4, 2025
272aa09
ioctl: add nvme_get_log_mgmt_addr_list()
ikegami-t Jan 4, 2025
a3417d3
ioctl: add nvme_get_log_reachability_groups()
ikegami-t Jan 4, 2025
38a804e
ioctl: add nvme_get_log_reachability_associations()
ikegami-t Jan 4, 2025
0a5e083
ioctl: add nvme_get_log_changed_alloc_ns_list()
ikegami-t Jan 4, 2025
9048fa7
ioctl: add nvme_get_log_host_discover()
ikegami-t Jan 4, 2025
d13211d
ioctl: add nvme_get_log_ave_discover()
ikegami-t Jan 4, 2025
14daa26
ioctl: add nvme_get_log_pull_model_ddc_req()
ikegami-t Jan 4, 2025
e9c6fe6
types: add NVME_FEAT_FDPE_*** definitions
ikegami-t Jan 7, 2025
0b1e8d0
types: add I/O command fabric commands opcode definition
ikegami-t Jan 9, 2025
d45e9a1
mi_xfer: Added nvme_mi_mi_xfer API
chorkin Dec 11, 2024
23b2f3f
types: fix enum nvme_psd definitions indentation errors
ikegami-t Jan 12, 2025
531bfdb
types: add spinup control and pls features definition
ikegami-t Jan 12, 2025
a9f667a
mi: add nvme_mi_admin_get_log_mgmt_addr_list()
ikegami-t Jan 13, 2025
0ce9566
build(deps): bump pypa/gh-action-pypi-publish@release/v1.5
dependabot[bot] Jan 20, 2025
dfc5cdf
types: Update id-ns fields based on NVM Command Set Spec 1.1
francispravin5 Jan 16, 2025
db633fd
build: add thank you bot
igaw Jan 20, 2025
a8e4aed
types: add NVME_CTRL_OACS definitions
ikegami-t Jan 18, 2025
609604d
build: add github token to comment step
igaw Jan 20, 2025
d8d9542
types: Update nvm-id-ns fields based on NVM Command Set Spec 1.1
francispravin5 Jan 20, 2025
acc19fc
build: remove thank you bot
igaw Jan 20, 2025
a9daa6a
util: avoid min macro pollution
zhangjian3032 Jan 10, 2025
0836183
test: check the namespace is not cluttered with min/max
zhangjian3032 Feb 6, 2025
bc207cd
mi: fix indentation errors
ikegami-t Jan 27, 2025
3a304c2
ioctl: add libnvme-mi NVMe 2.1 log page APIs
ikegami-t Jan 27, 2025
db856c1
types,util: Added Enums for missing status codes
arbaz404 Feb 4, 2025
4907ecb
types,util: add Asynchronous Event Configuration NVMe 2.1 definitions
francispravin5 Feb 6, 2025
be66b6f
build: checkpatch limit line length to 100 chars
igaw Feb 10, 2025
c8ebe6e
ioctl: fix nvme_get_log_reachability_groups() parameters order
ikegami-t Feb 11, 2025
26a6cb9
types: fix nvme_reachability_association_desc member variable name
ikegami-t Feb 11, 2025
c57e9d2
types: add HDISNS field of Host Behavior Support feature
francispravin5 Feb 12, 2025
8ad28af
mi: fix nvme_mi_admin_get_log_reachability_groups() parameters order
ikegami-t Feb 12, 2025
e3c2029
examples: fix time stamp prefix printf format string
igaw Feb 17, 2025
905aa3c
pyproject.toml: allow newer meson version
igaw Feb 17, 2025
4136b8f
build: update min meson dependency
igaw Feb 17, 2025
2e28bfe
build: request c++ compiler for host and build machine
igaw Feb 17, 2025
e9dae79
build: drop support for openssl 1
igaw Feb 17, 2025
85eb728
libnvme: export nvmf_exat_ptr_next
ikegami-t Feb 21, 2025
020b979
types: add enum for Identify I/O Command Set Data Structure
francispravin5 Feb 26, 2025
0d8d0a5
build: do not include config.h globally
igaw Feb 27, 2025
5d8cc1b
Makefile: Add new targets and update meson command syntax
Feb 28, 2025
c4bb99a
types: add SLM and CP command set indicator values
ikegami-t Feb 28, 2025
1a4d092
python, swig: add missing controller attributes
Mar 13, 2025
9f3d6c8
build: ignore PREFER_DEFINED_ATTRIBUTE_MACRO
igaw Mar 14, 2025
2c81b19
doc: Regenerate all docs for v1.12
igaw Mar 17, 2025
5ec1f52
Release v1.12
igaw Mar 17, 2025
c1e2af9
build: fix python release workflows
igaw Mar 24, 2025
ed1ace3
build: enable python test release and fix release tag
igaw Mar 24, 2025
1cc47cc
build: use correct syntax to fetch container
igaw Mar 24, 2025
396d5a7
build: use v1 branch pypi publish action
igaw Mar 25, 2025
d8265f6
build: use trusted publisher authentication
igaw Mar 25, 2025
e7af2d8
pyproject: add description metadata
igaw Mar 25, 2025
4fee175
build: set permissions for release-python
igaw Mar 25, 2025
013cf7c
build: disable twine metadata check
igaw Mar 25, 2025
156623f
build: update packaging for twine
igaw Mar 28, 2025
4610264
build: install pip
igaw Mar 28, 2025
e1d9660
build: use pipx for installing packaging
igaw Mar 28, 2025
dd82787
build: install packaging globally
igaw Mar 28, 2025
05a804d
build: install packaging in upload containers
igaw Mar 28, 2025
c3bb861
tree: add routine to fetch subsys model
martin-gpy Mar 20, 2025
4a615f3
tree: add routine to fetch subsys firmware rev
martin-gpy Mar 20, 2025
417cd2e
gitignore: ignore .build-tools
igaw Apr 1, 2025
555d4c1
src: update include directive
igaw Apr 1, 2025
8ddf4c7
ioctl: return status code when using liburing
igaw Apr 3, 2025
89ac31f
libnvme: do not byte swap command dwords
keithbusch Apr 3, 2025
8477f03
mock.c: fix checking of HAVE_GLIBC_IOCTL
sandy-lcq Apr 7, 2025
745f929
types: Update nvme_id_independent_id_ns fields based on NVMe 2.1 spec
francispravin5 Apr 7, 2025
da36c5a
types: add performance attribute structures
ikegami-t Mar 20, 2025
5b7b473
types: add performance characteristics feature access values
ikegami-t Mar 21, 2025
fe5ca25
util: add performance characteristics feature decode function
ikegami-t Mar 21, 2025
90f741d
types: add performance characteristics attribute type values
ikegami-t Mar 22, 2025
56ca8b4
types: Fix Live Migration SEQIND Shift and Mask
DanceDance Apr 8, 2025
2b30489
fabrics: retry connect command on EINTR
igaw Apr 8, 2025
cc645d5
build: fix python upload workflows
igaw Apr 10, 2025
89030f7
build: update gh-action-pypi-publish dependency
igaw Apr 10, 2025
f6b77b5
build: use the correct version syntax for actions
igaw Apr 10, 2025
7b44f32
build: set python version to 3.10
igaw Apr 10, 2025
21155e1
doc: Regenerate all docs for v1.13
igaw Apr 11, 2025
4727ac4
Release v1.13
igaw Apr 11, 2025
4c18921
build: switch to new python meson backend
glimchb Apr 11, 2025
0172e65
build: allow to specify tag for workflow_dispatch
igaw Apr 15, 2025
b17f79a
types: add performance characteristics attribute definitions
ikegami-t Apr 19, 2025
a3f8f83
util: add performance characteristic feature length
ikegami-t Apr 19, 2025
74d7217
build: upload unique pypi test versions
igaw Apr 22, 2025
8b4a9ac
build: add cleanup task for pypi test uploads
igaw Apr 22, 2025
0abb932
build: fix test pypi cleanup task
igaw Apr 22, 2025
ef4df90
build: cleanup python test pypi upload
igaw Apr 22, 2025
45b957e
build: split 'dev' postfix from version string
igaw Apr 22, 2025
526bc01
biuld: patch the meson.build for test pypi upload
igaw Apr 22, 2025
607df19
src: introduce unreleased export section
igaw Apr 23, 2025
9ad93c4
scripts: update UNRELEASED export map on release
igaw Apr 23, 2025
47b30c0
build: update readthedocs commands
igaw Apr 24, 2025
a4db8cf
build: use newer build container for readthedocs
igaw Apr 24, 2025
97f4883
mi: fix unrleased section name
igaw Apr 24, 2025
81bd404
tree: add routine to fetch subsys serial number
martin-gpy Apr 23, 2025
04061b4
util: add FDP events feature length
ikegami-t Apr 30, 2025
28b0e03
mi: add nvme_mi_submit entry and exit weak functions
ikegami-t Apr 9, 2025
4a89153
mi: Add support for multiple csi buffers
chorkin Apr 22, 2025
86d5ed9
tests: Add sample NBFT table with empty HFI ipv6 address
tbzatek May 2, 2025
30c87cb
tests: Add an empty NBFT table
tbzatek May 2, 2025
8971789
types,util: add enums for Boot Partition Write Protection Config feature
francispravin5 May 5, 2025
1c5c394
mi: Introduce asynchronous event message handling
chorkin Mar 4, 2025
8914e64
types: add temperature threshold feature TMPTHH field
ikegami-t May 2, 2025
1302510
ioctl: add temperature threshold TMPSEL and THSEL parameters to get
ikegami-t May 2, 2025
9851832
Revert "fabrics: retry connect command on EINTR"
igaw May 5, 2025
48ce0ca
types: Change LM CDQ sz argument from u8 to u32.
DanceDance May 2, 2025
82aef43
build: make 'clean' target an alias for 'purge'
igaw May 19, 2025
3ec3936
build: disable netdb test for static builds
igaw May 19, 2025
7f000b6
examples: add explicit pthread dependency to meson
ikegami-t May 16, 2025
84cf750
doc: Regenerate all docs for v1.14
igaw May 20, 2025
846d61c
Release v1.14
igaw May 20, 2025
4e1ea42
tree: handle the case when host_iface/host_traddr are set to "none"
May 22, 2025
9b3ab85
examples: remove unnecessary include of <bits/pthreadtypes.h>
dne May 23, 2025
a4dad98
examples: Make examples build selectable
giuliobenetti May 20, 2025
0454a99
ioctl: only use io_uring for char devices
igaw May 28, 2025
80efbd3
test: add missing tests for identify functions
MaisenbacherD Jun 3, 2025
bf923b3
test: add tests for log functions
MaisenbacherD Jun 3, 2025
f5b9a34
tree: add support for discovering nvme paths using sysfs multipath link
shroffni Apr 25, 2025
ed783ea
tree: add queue-depth attribute for nvme path object
shroffni Apr 25, 2025
2722f62
tree: add attribute numa_nodes for NVMe path object
shroffni Apr 25, 2025
2178245
test: extend sysfs tree dump test
shroffni Apr 25, 2025
85b8fb9
ioctl: fix nvme_lm_set_features_ctrl_data_queue
MaisenbacherD Jun 6, 2025
88bffbf
test: add missing tests for features functions
MaisenbacherD Jun 6, 2025
789fe75
test: add tests for zns functions
MaisenbacherD Jun 20, 2025
7e26cf9
doc: fix return value description for nvme_scan_topology
igaw Jun 26, 2025
9562713
types: add SMART / health information CW shift and mask values
ikegami-t Jun 3, 2025
e37a51a
types: Fix nvme_ns_id_desc packing
thieule742 Jun 13, 2025
b07041b
mi: Additional define options for older systems with SIOCMCTPALLOC
chorkin May 30, 2025
1dccef2
mi: nvme_mi_mi_xfer() is overly restrictive
chorkin Jun 13, 2025
3caa403
ioctl: introduce force xfer length configuration knob
igaw Jun 26, 2025
d0b0215
build: disable liburing support per default
igaw Jun 30, 2025
778aaf1
tree: filter tree after scan has completed
igaw Jun 3, 2025
4cef519
test: add tests for miscellaneous ioctl functions
MaisenbacherD Jul 1, 2025
ad931ec
ioctl: fix nvme_directive_recv_stream_status
MaisenbacherD Jul 8, 2025
15b2836
test: move _cleanup_free_ to util.h
MaisenbacherD Jul 9, 2025
e7bf9eb
test: add tests for miscellaneous ioctl functions
MaisenbacherD Jul 8, 2025
2ca023a
types: Add Create Queue Specific (CQS) shift and mask for LM CDQ command
NateThornton Jul 8, 2025
e642498
tree: free ctrl attributes when (re)configure ctrl
igaw Jul 1, 2025
7b7cb76
ioctl: fix nvme_get_log_endurance_grp_evt() description
ikegami-t Jul 15, 2025
69e2440
libnvme: sanitize free() handling
martin-gpy Jul 18, 2025
1c7472e
mi: add arbitration feature get function
ikegami-t Jun 1, 2025
bfd251b
mi: add power management feature functions
ikegami-t Jun 1, 2025
b243904
mi: correct mi admin feature functions map file
ikegami-t Jul 23, 2025
3435511
linux: TLS PSK derivation fixes
cleech Jul 21, 2025
855525b
Revert "linux: TLS PSK derivation fixes"
igaw Jul 25, 2025
7cb2376
json: do not leak port_obj for PCI devices
igaw Jul 24, 2025
a343ed6
tree: always set the host key
igaw Jul 24, 2025
1fa054f
doc: Regenerate all docs for v1.15
igaw Jul 25, 2025
a6497f6
Release v1.15
igaw Jul 25, 2025
87cde0d
build: add valgrind test option to build script
igaw Jul 29, 2025
6e6154a
build: run tests with valgrind for default builds
igaw Jul 29, 2025
97886cb
tree: do not try to strdup NULL pointer
igaw Jul 31, 2025
d7d3c1a
build(deps): Bump actions/download-artifact from 4 to 5
dependabot[bot] Aug 11, 2025
a3995d2
linux: Add functions to set and clear etdas bit
jeff-lien-sndk Jul 25, 2025
6f742c0
build(deps): Bump actions/checkout from 4 to 5
dependabot[bot] Aug 18, 2025
0be2270
linux: set errno when nvme_generate_tls_key_identity() fails
hreinecke Aug 19, 2025
7232099
test/psk: add testcase for TLS identity derivation
hreinecke Aug 19, 2025
48f5d07
linux: rename __nvme_insert_tls_key() to __nvme_import_tls_key()
hreinecke Aug 19, 2025
97c4170
linux: rename __nvme_insert_tls_key_versioned() to __nvme_insert_tls_…
hreinecke Aug 19, 2025
fde6b1f
libnvme: TLS PSK derivation fixes
cleech Jul 21, 2025
32560ea
docs: add missing API types documentation
Arno500 Aug 22, 2025
b686562
nvme.i: fix crash on ctrl.discover() without a connection
hreinecke Aug 28, 2025
86ceb42
nvme.i: decode 'tsas' discovery log page entry
hreinecke Aug 29, 2025
eff0ffe
linux: fix HKDF TLS key derivation back to OpenSSL 3.0.8
cleech Aug 26, 2025
0bf294e
python: fix typo in nvmf_discovery_log
Aug 29, 2025
8eace59
libnvme: propagate the error to the caller if nvme_get_log_page() fails
maurizio-lombardi Aug 14, 2025
ef351c2
nvme.i: fixup typo in nvme:discover
hreinecke Sep 3, 2025
0ee7f02
libnvme/nvme.i: Update subsystem definitions
hreinecke Sep 4, 2025
284659b
examples/discovery-loop.py: update to use tcp transport
hreinecke Sep 4, 2025
c2a6993
nvme/linux: add fallback implementation for nvme_insert_tls_key_compat()
hreinecke Sep 4, 2025
305b209
python: Don't exit immediately on discovery fail.
Sep 4, 2025
75d1e37
build(deps): Bump pypa/gh-action-pypi-publish in /.github/workflows
dependabot[bot] Sep 4, 2025
e08f9e9
libnvme/nvme.i: raise exception when disconnect fails
hreinecke Sep 4, 2025
2c7e3b2
python: fix iterators failing on empty lists
Sep 4, 2025
2c90d97
python: remove "iter" elements
Sep 5, 2025
eb72e3b
python: support 'with' statement for objects
hreinecke Sep 5, 2025
89c132d
examples/discover-loop.py: rework to use 'with' statement
hreinecke Sep 5, 2025
b325953
examples/discover-loop.py: actually implement a discovery loop
hreinecke Sep 5, 2025
da1fe25
nvme/linux: check for empty digest in gen_tls_identity()
hreinecke Sep 5, 2025
59f7020
linux: use EVP_PKEY_CTX_add1_hkdf_info only once in compat function
igaw Sep 16, 2025
c804c2f
test: add hkdf_add1 test
igaw Sep 17, 2025
33018f5
build: don't mark build fail when coverage fails
igaw Sep 22, 2025
7f2243c
tree: support apple-nvme transport
craftyguy Sep 15, 2025
6ff20a2
linux: Add nvme_get_uuid_list function
jeff-lien-sndk Oct 3, 2025
c2f30b4
mi-mctp: Fix compile bug in test/mi-mctp.c when !HAVE_LINUX_MCTP_H
chorkin Sep 26, 2025
254f81c
test/mi: initialize struct args
igaw Oct 14, 2025
157d2a7
build(deps): Bump actions/upload-artifact from 4 to 5
dependabot[bot] Oct 27, 2025
6634493
build(deps): Bump actions/download-artifact from 5 to 6
dependabot[bot] Oct 27, 2025
fa4969f
tree: preserve dhchap_key to during scan
igaw Nov 3, 2025
73e3fcc
doc: Regenerate all docs for v1.16
igaw Nov 4, 2025
81ade08
Release v1.16
igaw Nov 4, 2025
89646d0
lib: import libnvme sources
igaw Nov 4, 2025
9ed7ba7
libnvme: hookup the library into the build
igaw Nov 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
27 changes: 27 additions & 0 deletions libnvme/.checkpatch.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Checkpatch options.
# REF: https://docs.kernel.org/dev-tools/checkpatch.html

# This isn't actually a Linux kernel tree
--no-tree

--max-line-length=100

--ignore EMAIL_SUBJECT

# FILE_PATH_CHANGES reports this kind of message:
# "added, moved or deleted file(s), does MAINTAINERS need updating?"
--ignore FILE_PATH_CHANGES


# Commit messages might contain a Gerrit Change-Id.
--ignore GERRIT_CHANGE_ID

# Do not check the format of commit messages, as Gerrit's merge commits do not
# preserve it.
--ignore GIT_COMMIT_ID

# Avoid "Does not appear to be a unified-diff format patch" message
--ignore NOT_UNIFIED_DIFF

# Do not warn for __attribute__((XXX)) is used
--ignore PREFER_DEFINED_ATTRIBUTE_MACRO
18 changes: 18 additions & 0 deletions libnvme/.github/cross/ubuntu-cross-armhf.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
[binaries]
c = '/usr/bin/arm-linux-gnueabihf-gcc'
ar = '/usr/arm-linux-gnueabihf/bin/ar'
strip = '/usr/arm-linux-gnueabihf/bin/strip'
pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'
ld = '/usr/bin/arm-linux/gnueabihf-ld'
exe_wrapper = '/usr/bin/qemu-arm-static'

[properties]
root = '/usr/arm-linux-gnueabihf'
has_function_printf = true
skip_sanity_check = true

[host_machine]
system = 'linux'
cpu_family = 'arm'
cpu = 'armv7'
endian = 'little'
18 changes: 18 additions & 0 deletions libnvme/.github/cross/ubuntu-cross-ppc64le.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
[binaries]
c = '/usr/bin/powerpc64le-linux-gnu-gcc'
ar = '/usr/powerpc64le-linux-gnu/bin/ar'
strip = '/usr/powerpc64le-linux-gnu/bin/strip'
pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'
ld = '/usr/bin/powerpc64le-linux-gnu-ld'
exe_wrapper = '/usr/bin/qemu-ppc64le-static'

[properties]
root = '/usr/powerpc64le-linux-gnu'
has_function_printf = true
skip_sanity_check = true

[host_machine]
system = 'linux'
cpu_family = 'ppc64'
cpu = ''
endian = 'little'
18 changes: 18 additions & 0 deletions libnvme/.github/cross/ubuntu-cross-s390x.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
[binaries]
c = '/usr/bin/s390x-linux-gnu-gcc'
ar = '/usr/s390x-linux-gnu/bin/ar'
strip = '/usr/s390x-linux-gnu/bin/strip'
pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'
ld = '/usr/bin/s390x-linux-gnu-ld'
exe_wrapper = '/usr/bin/qemu-s390x-static'

[properties]
root = '/usr/s390x-linux-gnu'
has_function_printf = true
skip_sanity_check = true

[host_machine]
system = 'linux'
cpu_family = 's390x'
cpu = ''
endian = 'big'
7 changes: 7 additions & 0 deletions libnvme/.github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
115 changes: 115 additions & 0 deletions libnvme/.github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
---
name: build

on:
push:
branches: [master]
pull_request:
branches: [master]

workflow_dispatch:

jobs:
default:
runs-on: ubuntu-latest
strategy:
matrix:
compiler: [gcc, clang]
buildtype: [debug, release]
container:
image: ghcr.io/linux-nvme/debian.python:latest
steps:
- uses: actions/checkout@v5
- name: build
run: |
scripts/build.sh -b ${{ matrix.buildtype }} -c ${{ matrix.compiler }} -x
- uses: actions/upload-artifact@v5
name: upload logs
if: failure()
with:
name: logs files
path: |
.build-ci/meson-logs/*.txt

cross:
runs-on: ubuntu-latest
strategy:
matrix:
include:
- arch: armhf
- arch: s390x
- arch: ppc64le
steps:
- uses: actions/checkout@v5
- name: enable foreign arch
uses: dbhi/qus/action@main
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: compile and run unit tests
uses: mosteo-actions/docker-run@v2
with:
image: ghcr.io/linux-nvme/ubuntu-cross-${{ matrix.arch }}:latest
guest-dir: /build
host-dir: ${{ github.workspace }}
command: |
scripts/build.sh -b release -c gcc -t ${{ matrix.arch }} cross
params: "--platform linux/amd64"
pull-params: "--platform linux/amd64"
- uses: actions/upload-artifact@v5
name: upload logs
if: failure()
with:
name: log files
path: |
.build-ci/meson-logs/*.txt

libdbus:
name: libdbus
runs-on: ubuntu-latest
container:
image: ghcr.io/linux-nvme/debian:latest
steps:
- uses: actions/checkout@v5
- name: build
run: |
scripts/build.sh -b release -c gcc libdbus
- uses: actions/upload-artifact@v5
name: upload logs
if: failure()
with:
name: log files
path: |
.build-ci/meson-logs/*.txt

fallback-shared-libraries:
name: fallback shared libraries
runs-on: ubuntu-latest
container:
image: ghcr.io/linux-nvme/debian:latest
if: github.ref == 'refs/heads/master'
steps:
- uses: actions/checkout@v5
- name: build
run: |
scripts/build.sh -b release -c gcc fallback
- uses: actions/upload-artifact@v5
if: failure()
with:
name: log files
path: |
.build-ci/meson-logs/*.txt

build-muon:
name: muon minimal static
runs-on: ubuntu-latest
container:
image: ghcr.io/linux-nvme/debian:latest
steps:
- uses: actions/checkout@v5
- name: build
run: |
scripts/build.sh -m muon
15 changes: 15 additions & 0 deletions libnvme/.github/workflows/checkpatch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: checkpatch review
on: [pull_request]
jobs:
checkpatch:
name: checkpatch review
runs-on: ubuntu-latest
steps:
- name: 'Calculate PR commits + 1'
run: echo "PR_FETCH_DEPTH=$(( ${{ github.event.pull_request.commits }} + 1 ))" >> $GITHUB_ENV
- uses: actions/checkout@v5
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Run checkpatch review
uses: webispy/checkpatch-action@v9
35 changes: 35 additions & 0 deletions libnvme/.github/workflows/cleanup-python.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: cleanup python

on:
workflow_dispatch:
inputs:
keep-last:
description: "How many recent dev releases to keep"
required: false
default: "5"
dry-run:
description: "Only simulate the deletion (true/false)"
required: false
default: "true"

jobs:
cleanup:
runs-on: ubuntu-latest
environment: pypi
steps:
- name: Install pypi-cleanup
run: pip install pypi-cleanup

- name: Run pypi-cleanup on TestPyPI
env:
PYPI_USERNAME: __token__
PYPI_PASSWORD: ${{ secrets.TEST_PYPI_API_TOKEN }}
run: |
pypi-cleanup \
--username "$PYPI_USERNAME" \
--password "$PYPI_PASSWORD" \
--repository-url https://test.pypi.org/legacy/ \
--package libnvme \
--keep ${{ github.event.inputs.keep-last }} \
--version-regex '.*\.dev[0-9]+' \
$([ "${{ github.event.inputs.dry-run }}" == "true" ] && echo "--dry-run")
24 changes: 24 additions & 0 deletions libnvme/.github/workflows/coverage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
name: coverage

on:
push:
branches: [master]

jobs:
code-coverage:
if: github.repository == 'linux-nvme/libnvme'
name: code coverage
runs-on: ubuntu-latest
continue-on-error: true
container:
image: ghcr.io/linux-nvme/debian.python:latest
steps:
- uses: actions/checkout@v5
- name: build
run: |
scripts/build.sh coverage
- uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: true
22 changes: 22 additions & 0 deletions libnvme/.github/workflows/docs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
name: docs

on:
push:
branches: [master]
pull_request:
branches: [master]

workflow_dispatch:

jobs:
build-docs:
name: build documentation
runs-on: ubuntu-latest
container:
image: ghcr.io/linux-nvme/debian:latest
steps:
- uses: actions/checkout@v5
- name: build
run: |
scripts/build.sh docs
Loading
Loading