** Also affects: apparmor (Ubuntu Resolute)
   Importance: Undecided
       Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to apparmor in Ubuntu.
https://bugs.launchpad.net/bugs/2126920

Title:
  lsblk profile need to allow read access to Azure NVMe ACPI hierarchy

Status in apparmor package in Ubuntu:
  New
Status in apparmor source package in Questing:
  New
Status in apparmor source package in Resolute:
  New

Bug description:
  [ Impact ]

  * On Ubuntu 25.20 (Questing), in Azure VMs using NVMe devices, the
  AppArmor profile for lsblk does not permit read access to certain ACPI
  / sysfs nodes needed to enumerate NVMe metadata (e.g. the ACPI NVMe
  namespace path).

  * This affects any user or automation relying on NVMe description
  using lsblk, which is the case of the selftest.py script, used in the
  autopackages test of the azure-vm-utils package (which as of today
  we're skipping).

  * The patch is limited in scope (just relaxing read access to a narrow
  set of sysfs/ACPI paths) and has low regression risk.

  [ Test Plan ]

   * You will need an Azure account for creating the machine. In an
  Azure VM created with support for NMVe devices, e.g:

   az vm create --resource-group miriam-azure-vm-utils --name t-m-lsblk
  --image "Canonical:ubuntu-25_10-daily:server:latest" --ssh-key-values
  ~/.ssh/id_rsa.pub --size Standard_E2ads_v6 --admin-username ubuntu

  * run:

  sudo lsblk
  sudo journalctl --boot --grep apparmor

  you will see entries like this:

  
  ubuntu@t-m-lsblk:~$ sudo journalctl --boot --grep apparmor | grep 
"/sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0004:00/MSFT1000:00/"
  Oct 10 15:33:58 t-m-lsblk kernel: audit: type=1400 audit(1760110438.106:192): 
apparmor="DENIED" operation="open" class="file" profile="lsblk" 
name="/sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0004:00/MSFT1000:00/7ad35d50-c05b-47ab-b3a0-56a9a845852b/pcic05b:00/c05b:00:00.0/nvme/nvme0/nvme0n1/hidden"
 pid=1726 comm="lsblk" requested_mask="r" denied_mask="r" fsuid=0 ouid=0

  * You can manually chek it also trying to query an NMVe device with
  lsblk:

  ubuntu@t-m-lsblk:~$ nvme list
  Node                  Generic               SN                   Model        
                            Namespace  Usage                      Format        
   FW Rev  
  --------------------- --------------------- -------------------- 
---------------------------------------- ---------- -------------------------- 
---------------- --------
  /dev/nvme0n1          /dev/ng0n1            SN: 000001           MSFT NVMe 
Accelerator v1.0               0x1         32.21  GB /  32.21  GB    512   B +  
0 B   v1.00000
  /dev/nvme1n1          /dev/ng1n1            5c44c9a8790fe8d60001 Microsoft 
NVMe Direct Disk v2            0x1        118.11  GB / 118.11  GB    512   B +  
0 B   NVMDV002

  ubuntu@t-m-lsblk:~$ sudo lsblk -b -n -o SIZE -d /dev/nvme0n1
  lsblk: /dev/nvme0n1: failed to get sysfs name: Permission denied

  * Once the fix is applied (and apparmor lsblk profile reloaded), we
  don't see more entries in the syslog and we get an output for the
  manual checking like this:

  ubuntu@t-m-lsblk:~$ lsblk -b -n -o SIZE -d '/dev/nvme1n1'
  32213303296


  [ Where problems could occur ]

  * The patch might omit a needed sub-path under the ACPI / NVMe sysfs
  tree, so some device metadata remains inaccessible.

  * It might unintentionally allow broader sysfs access than intended
  (though this is unlikely as rules are very specific to the Azure
  hierarchy).

  * A future kernel or Azure update might rearrange the sysfs paths
  (e.g. rename or move NVMe/ACPI directories), making the rules
  obsolete.

  * If the profile is not reloaded or incorrectly installed, the old
  profile might persist, making tests falsely appear to fail or succeed.

  [ Other Info ]

   * Merged upstream at
  https://gitlab.com/apparmor/apparmor/-/merge_requests/1808

  [ Original Description ]

  When running tests of azure-vm-utils package on Questing 25.10 on an
  Azure VM machines we see:

  ubuntu@nmvedirect:~$ python3 --version
  Python 3.13.7
  ubuntu@nmvedirect:~$ sudo python3 ./selftest.py
  azure-nvme-id info: AzureNvmeIdInfo(azure_nvme_id_stdout='/dev/nvme0n1: 
type=os\n/dev/nvme1n1: type=local,index=1,name=nvme-110G-1\n', 
azure_nvme_id_stderr='', azure_nvme_id_returncode=0, 
azure_nvme_id_disks={'nvme0n1': AzureNvmeIdDevice(device='/dev/nvme0n1', 
model=None, nvme_id='type=os', type='os', index=None, lun=None, name=None, 
extra={}), 'nvme1n1': AzureNvmeIdDevice(device='/dev/nvme1n1', model=None, 
nvme_id='type=local,index=1,name=nvme-110G-1', type='local', index=1, lun=None, 
name='nvme-110G-1', extra={})}, azure_nvme_id_json_stdout='[\n  {\n    "path": 
"/dev/nvme0n1",\n    "model": "MSFT NVMe Accelerator v1.0",\n    "properties": 
{\n      "type": "os"\n    },\n    "vs": ""\n  },\n  {\n    "path": 
"/dev/nvme1n1",\n    "model": "Microsoft NVMe Direct Disk v2",\n    
"properties": {\n      "type": "local",\n      "index": 1,\n      "name": 
"nvme-110G-1"\n    },\n    "vs": "type=local,index=1,name=nvme-110G-1"\n  
}\n]\n', azure_nvme_id_json_stderr='', azure_nvme_id_json_returncode=0, 
azure_nvme_id_json_disks={'nvme0n1': AzureNvmeIdDevice(device='/dev/nvme0n1', 
model='MSFT NVMe Accelerator v1.0', nvme_id='', type='os', index=None, 
lun=None, name=None, extra={}), 'nvme1n1': 
AzureNvmeIdDevice(device='/dev/nvme1n1', model='Microsoft NVMe Direct Disk v2', 
nvme_id='', type='local', index=1, lun=None, name='nvme-110G-1', extra={})}, 
azure_nvme_id_help_stdout='Usage: azure-nvme-id [-d|--debug] 
[-u|--udev|-h|--help|-v|--version]\n  -d, --debug               Enable debug 
mode\n  -f, --format {plain|json} Output format (default=plain)\n  -h, --help   
             Display this help message\n  -u, --udev                Enable udev 
mode\n  -v, --version             Display the version\n', 
azure_nvme_id_help_stderr='', azure_nvme_id_help_returncode=0, 
azure_nvme_id_version_stdout='azure-nvme-id 0.6.0-4\n', 
azure_nvme_id_version_stderr='', azure_nvme_id_version_returncode=0, 
azure_nvme_id_version='0.6.0-4', azure_nvme_id_zzz_stdout='Usage: azure-nvme-id 
[-d|--debug] [-u|--udev|-h|--help|-v|--version]\n  -d, --debug               
Enable debug mode\n  -f, --format {plain|json} Output format (default=plain)\n  
-h, --help                Display this help message\n  -u, --udev               
 Enable udev mode\n  -v, --version             Display the version\n', 
azure_nvme_id_zzz_stderr='invalid argument: zzz\n', 
azure_nvme_id_zzz_returncode=1)
  error while fetching disk size: CalledProcessError(32, ['lsblk', '-b', '-n', 
'-o', 'SIZE', '-d', '/dev/nvme1n1'])
  Traceback (most recent call last):
    File "/home/ubuntu/./selftest.py", line 1118, in <module>
      main()
      ~~~~^^
    File "/home/ubuntu/./selftest.py", line 1110, in main
      validator = AzureVmUtilsValidator(
          skip_imds_validation=args.skip_imds_validation,
          skip_symlink_validation=args.skip_symlink_validation,
      )
    File "/home/ubuntu/./selftest.py", line 867, in __init__
      self.disk_info = DiskInfo.gather()
                       ~~~~~~~~~~~~~~~^^
    File "/home/ubuntu/./selftest.py", line 427, in gather
      nvme_local_disk_size_gib = min(
          get_disk_size_gib(f"/dev/{disk}") for disk in nvme_local_disks
      )
    File "/home/ubuntu/./selftest.py", line 428, in <genexpr>
      get_disk_size_gib(f"/dev/{disk}") for disk in nvme_local_disks
      ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
    File "/home/ubuntu/./selftest.py", line 195, in get_disk_size_gib
      proc = subprocess.run(
          ["lsblk", "-b", "-n", "-o", "SIZE", "-d", disk_path],
      ...<3 lines>...
          check=True,
      )
    File "/usr/lib/python3.13/subprocess.py", line 577, in run
      raise CalledProcessError(retcode, process.args,
                               output=stdout, stderr=stderr)
  subprocess.CalledProcessError: Command '['lsblk', '-b', '-n', '-o', 'SIZE', 
'-d', '/dev/nvme1n1']' returned non-zero exit status 32.

  This is due to apparmor lsblk profile:

  sudo dmesg | grep lsblk
  [  461.611820] audit: type=1400 audit(1759492274.036:192): apparmor="DENIED" 
operation="open" class="file" profile="lsblk" 
name="/sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0004:00/MSFT1000:00/70b4ac38-05b7-4efe-8862-db2456dfec84/pci05b7:00/05b7:00:00.0/nvme/nvme0/nvme0n1/"
 pid=1707 comm="lsblk" requested_mask="r" denied_mask="r" fsuid=0 ouid=0

  I'm submitting the attached patch to upstream to fix it, which I
  tested is OK:

  ubuntu@t-questing-check-package:~$ sudo vim /etc/apparmor.d/lsblk
  ubuntu@t-questing-check-package:~$ sudo apparmor_parser -r 
/etc/apparmor.d/lsblk
  ubuntu@t-questing-check-package:~$ sudo systemctl reload apparmor
  ubuntu@t-questing-check-package:~$ sudo ./selftest.py
  [2025-10-03 14:31:00,379] azure-nvme-id info: 
AzureNvmeIdInfo(azure_nvme_id_stdout='/dev/nvme0n1: 
type=local,index=1,name=nvme-110G-1\n/dev/nvme1n1: type=os\n', 
azure_nvme_id_stderr='', azure_nvme_id_returncode=0, 
azure_nvme_id_disks={'nvme0n1': AzureNvmeIdDevice(device='/dev/nvme0n1', 
model=None, nvme_id='type=local,index=1,name=nvme-110G-1', type='local', 
index=1, lun=None, name='nvme-110G-1', extra={}), 'nvme1n1': 
AzureNvmeIdDevice(device='/dev/nvme1n1', model=None, nvme_id='type=os', 
type='os', index=None, lun=None, name=None, extra={})}, 
azure_nvme_id_json_stdout='[\n  {\n    "path": "/dev/nvme0n1",\n    "model": 
"Microsoft NVMe Direct Disk v2",\n    "properties": {\n      "type": "local",\n 
     "index": 1,\n      "name": "nvme-110G-1"\n    },\n    "vs": 
"type=local,index=1,name=nvme-110G-1"\n  },\n  {\n    "path": "/dev/nvme1n1",\n 
   "model": "MSFT NVMe Accelerator v1.0",\n    "properties": {\n      "type": 
"os"\n    },\n    "vs": ""\n  }\n]\n', azure_nvme_id_json_stderr='', 
azure_nvme_id_json_returncode=0, azure_nvme_id_json_disks={'nvme0n1': 
AzureNvmeIdDevice(device='/dev/nvme0n1', model='Microsoft NVMe Direct Disk v2', 
nvme_id='', type='local', index=1, lun=None, name='nvme-110G-1', extra={}), 
'nvme1n1': AzureNvmeIdDevice(device='/dev/nvme1n1', model='MSFT NVMe 
Accelerator v1.0', nvme_id='', type='os', index=None, lun=None, name=None, 
extra={})}, azure_nvme_id_help_stdout='Usage: azure-nvme-id [-d|--debug] 
[-u|--udev|-h|--help|-v|--version]\n  -d, --debug               Enable debug 
mode\n  -f, --format {plain|json} Output format (default=plain)\n  -h, --help   
             Display this help message\n  -u, --udev                Enable udev 
mode\n  -v, --version             Display the version\n', 
azure_nvme_id_help_stderr='', azure_nvme_id_help_returncode=0, 
azure_nvme_id_version_stdout='azure-nvme-id 0.6.0-4\n', 
azure_nvme_id_version_stderr='', azure_nvme_id_version_returncode=0, 
azure_nvme_id_version='0.6.0-4', azure_nvme_id_zzz_stdout='Usage: azure-nvme-id 
[-d|--debug] [-u|--udev|-h|--help|-v|--version]\n  -d, --debug               
Enable debug mode\n  -f, --format {plain|json} Output format (default=plain)\n  
-h, --help                Display this help message\n  -u, --udev               
 Enable udev mode\n  -v, --version             Display the version\n', 
azure_nvme_id_zzz_stderr='invalid argument: zzz\n', 
azure_nvme_id_zzz_returncode=1)
  [2025-10-03 14:31:00,385] no SCSI resource disk found
  [2025-10-03 14:31:00,385] disks info: DiskInfo(root_device='nvme1n1p1', 
dev_disk_azure_links=['/dev/disk/azure/local/by-index/1', 
'/dev/disk/azure/local/by-name/nvme-110G-1', 
'/dev/disk/azure/local/by-serial/90df032a12b60d6c0001', '/dev/disk/azure/os', 
'/dev/disk/azure/os-part1', '/dev/disk/azure/os-part13', 
'/dev/disk/azure/os-part14', '/dev/disk/azure/os-part15'], 
dev_disk_azure_resource_disk=None, dev_disk_azure_resource_disk_size_gib=0, 
nvme_local_disk_size_gib=110, nvme_local_disks_v1=[], 
nvme_local_disks_v2=['nvme0n1'], nvme_local_disks=['nvme0n1'], 
nvme_remote_data_disks=[], nvme_remote_disks=[], nvme_remote_os_disk='nvme1n1', 
root_device_is_nvme=True, scsi_resource_disk=None, 
scsi_resource_disk_size_gib=0)
  [2025-10-03 14:31:00,408] sku config: None
  [2025-10-03 14:31:00,408] validate_azure_nvme_id_help OK: 'Usage: 
azure-nvme-id [-d|--debug] [-u|--udev|-h|--help|-v|--version]\n  -d, --debug    
           Enable debug mode\n  -f, --format {plain|json} Output format 
(default=plain)\n  -h, --help                Display this help message\n  -u, 
--udev                Enable udev mode\n  -v, --version             Display the 
version\n'
  [2025-10-03 14:31:00,408] validate_azure_nvme_id_version OK: 0.6.0-4
  [2025-10-03 14:31:00,408] validate_azure_nvme_id_invalid_arg OK: 'Usage: 
azure-nvme-id [-d|--debug] [-u|--udev|-h|--help|-v|--version]\n  -d, --debug    
           Enable debug mode\n  -f, --format {plain|json} Output format 
(default=plain)\n  -h, --help                Display this help message\n  -u, 
--udev                Enable udev mode\n  -v, --version             Display the 
version\n'
  [2025-10-03 14:31:00,408] validate_azure_nvme_disks OK: {'nvme0n1': 
AzureNvmeIdDevice(device='/dev/nvme0n1', model=None, 
nvme_id='type=local,index=1,name=nvme-110G-1', type='local', index=1, lun=None, 
name='nvme-110G-1', extra={}), 'nvme1n1': 
AzureNvmeIdDevice(device='/dev/nvme1n1', model=None, nvme_id='type=os', 
type='os', index=None, lun=None, name=None, extra={})}
  [2025-10-03 14:31:00,408] validate_azure_nvmve_id OK: '/dev/nvme0n1: 
type=local,index=1,name=nvme-110G-1\n/dev/nvme1n1: type=os\n'
  [2025-10-03 14:31:00,408] validate_azure_nvme_disks OK: {'nvme0n1': 
AzureNvmeIdDevice(device='/dev/nvme0n1', model=None, 
nvme_id='type=local,index=1,name=nvme-110G-1', type='local', index=1, lun=None, 
name='nvme-110G-1', extra={}), 'nvme1n1': 
AzureNvmeIdDevice(device='/dev/nvme1n1', model=None, nvme_id='type=os', 
type='os', index=None, lun=None, name=None, extra={})}
  [2025-10-03 14:31:00,408] validate_azure_nvmve_id_json OK: '[\n  {\n    
"path": "/dev/nvme0n1",\n    "model": "Microsoft NVMe Direct Disk v2",\n    
"properties": {\n      "type": "local",\n      "index": 1,\n      "name": 
"nvme-110G-1"\n    },\n    "vs": "type=local,index=1,name=nvme-110G-1"\n  },\n  
{\n    "path": "/dev/nvme1n1",\n    "model": "MSFT NVMe Accelerator v1.0",\n    
"properties": {\n      "type": "os"\n    },\n    "vs": ""\n  }\n]\n'
  [2025-10-03 14:31:00,408] validate_dev_disk_azure_links_data OK: []
  [2025-10-03 14:31:00,408] validate_dev_disk_azure_links_local OK: 
['/dev/disk/azure/local/by-index/1', 
'/dev/disk/azure/local/by-name/nvme-110G-1', 
'/dev/disk/azure/local/by-serial/90df032a12b60d6c0001']
  [2025-10-03 14:31:00,408] validate_dev_disk_azure_links_os OK: 
'/dev/disk/azure/os'
  [2025-10-03 14:31:00,408] validate_dev_disk_azure_links_resource OK: 
'/dev/disk/azure/resource'
  [2025-10-03 14:31:00,408] validate_scsi_resource_disk OK: 
/dev/disk/azure/resource => None
  [2025-10-03 14:31:00,408] validate_interface enP64000s1 OK: 
NetworkInterface(name='enP64000s1', driver='mlx5_core', 
mac='7c:1e:52:5d:4e:18', ipv4_addrs=[], udev_properties={'DEVPATH': 
'/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0004:00/MSFT1000:00/74be939c-fa00-4f1c-92d2-01b92989e8bc/pcifa00:00/fa00:00:02.0/net/enP64000s1',
 'INTERFACE': 'enP64000s1', 'IFINDEX': '3', 'SUBSYSTEM': 'net', 
'USEC_INITIALIZED': '9137589', 'AZURE_UNMANAGED_SRIOV': '1', 
'ID_NET_MANAGED_BY': 'unmanaged', 'NM_UNMANAGED': '1', 'ID_NET_DRIVER': 
'mlx5_core', 'ID_BUS': 'pci', 'ID_VENDOR_ID': '0x15b3', 'ID_MODEL_ID': 
'0x101a', 'ID_PCI_CLASS_FROM_DATABASE': 'Network controller', 
'ID_PCI_SUBCLASS_FROM_DATABASE': 'Ethernet controller', 
'ID_VENDOR_FROM_DATABASE': 'Mellanox Technologies', 'ID_MODEL_FROM_DATABASE': 
'MT28800 Family [ConnectX-5 Ex Virtual Function]', 'ID_NET_NAMING_SCHEME': 
'v257', 'ID_NET_NAME_MAC': 'enx7c1e525d4e18', 'ID_OUI_FROM_DATABASE': 
'Microsoft', 'ID_NET_NAME_PATH': 'enP64000p0s2', 'ID_NET_NAME_SLOT': 
'enP64000s1', 'ID_MM_CANDIDATE': '1', 'ID_PATH': 
'acpi-MSFT1000:00-pci-fa00:00:02.0', 'ID_PATH_TAG': 
'acpi-MSFT1000_00-pci-fa00_00_02_0', 'ID_NET_LINK_FILE': 
'/usr/lib/systemd/network/99-default.link', 'ID_NET_NAME': 'enP64000s1', 
'SYSTEMD_ALIAS': '/sys/subsystem/net/devices/enP64000s1', 'TAGS': ':systemd:', 
'CURRENT_TAGS': ':systemd:'})
  [2025-10-03 14:31:00,408] validate_interface eth0 OK: 
NetworkInterface(name='eth0', driver='hv_netvsc', mac='7c:1e:52:5d:4e:18', 
ipv4_addrs=['10.0.0.49'], udev_properties={'DEVPATH': 
'/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0004:00/MSFT1000:00/7c1e525d-4e18-7c1e-525d-4e187c1e525d/net/eth0',
 'INTERFACE': 'eth0', 'IFINDEX': '2', 'SUBSYSTEM': 'net', 'USEC_INITIALIZED': 
'3514337', 'ID_NET_DRIVER': 'hv_netvsc', 'NM_UNMANAGED': '1', 
'ID_NET_NAMING_SCHEME': 'v257', 'ID_NET_NAME_MAC': 'enx7c1e525d4e18', 
'ID_OUI_FROM_DATABASE': 'Microsoft', 'ID_MM_CANDIDATE': '1', 'ID_PATH': 
'acpi-MSFT1000:00', 'ID_PATH_TAG': 'acpi-MSFT1000_00', 'ID_NET_LINK_FILE': 
'/usr/lib/systemd/network/99-default.link', 'ID_NET_NAME': 'eth0', 
'SYSTEMD_ALIAS': '/sys/subsystem/net/devices/eth0', 'TAGS': ':systemd:', 
'CURRENT_TAGS': ':systemd:'})
  [2025-10-03 14:31:00,408] validate_networking OK: 
NetworkInfo(interfaces={'enP64000s1': NetworkInterface(name='enP64000s1', 
driver='mlx5_core', mac='7c:1e:52:5d:4e:18', ipv4_addrs=[], 
udev_properties={'DEVPATH': 
'/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0004:00/MSFT1000:00/74be939c-fa00-4f1c-92d2-01b92989e8bc/pcifa00:00/fa00:00:02.0/net/enP64000s1',
 'INTERFACE': 'enP64000s1', 'IFINDEX': '3', 'SUBSYSTEM': 'net', 
'USEC_INITIALIZED': '9137589', 'AZURE_UNMANAGED_SRIOV': '1', 
'ID_NET_MANAGED_BY': 'unmanaged', 'NM_UNMANAGED': '1', 'ID_NET_DRIVER': 
'mlx5_core', 'ID_BUS': 'pci', 'ID_VENDOR_ID': '0x15b3', 'ID_MODEL_ID': 
'0x101a', 'ID_PCI_CLASS_FROM_DATABASE': 'Network controller', 
'ID_PCI_SUBCLASS_FROM_DATABASE': 'Ethernet controller', 
'ID_VENDOR_FROM_DATABASE': 'Mellanox Technologies', 'ID_MODEL_FROM_DATABASE': 
'MT28800 Family [ConnectX-5 Ex Virtual Function]', 'ID_NET_NAMING_SCHEME': 
'v257', 'ID_NET_NAME_MAC': 'enx7c1e525d4e18', 'ID_OUI_FROM_DATABASE': 
'Microsoft', 'ID_NET_NAME_PATH': 'enP64000p0s2', 'ID_NET_NAME_SLOT': 
'enP64000s1', 'ID_MM_CANDIDATE': '1', 'ID_PATH': 
'acpi-MSFT1000:00-pci-fa00:00:02.0', 'ID_PATH_TAG': 
'acpi-MSFT1000_00-pci-fa00_00_02_0', 'ID_NET_LINK_FILE': 
'/usr/lib/systemd/network/99-default.link', 'ID_NET_NAME': 'enP64000s1', 
'SYSTEMD_ALIAS': '/sys/subsystem/net/devices/enP64000s1', 'TAGS': ':systemd:', 
'CURRENT_TAGS': ':systemd:'}), 'eth0': NetworkInterface(name='eth0', 
driver='hv_netvsc', mac='7c:1e:52:5d:4e:18', ipv4_addrs=['10.0.0.49'], 
udev_properties={'DEVPATH': 
'/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0004:00/MSFT1000:00/7c1e525d-4e18-7c1e-525d-4e187c1e525d/net/eth0',
 'INTERFACE': 'eth0', 'IFINDEX': '2', 'SUBSYSTEM': 'net', 'USEC_INITIALIZED': 
'3514337', 'ID_NET_DRIVER': 'hv_netvsc', 'NM_UNMANAGED': '1', 
'ID_NET_NAMING_SCHEME': 'v257', 'ID_NET_NAME_MAC': 'enx7c1e525d4e18', 
'ID_OUI_FROM_DATABASE': 'Microsoft', 'ID_MM_CANDIDATE': '1', 'ID_PATH': 
'acpi-MSFT1000:00', 'ID_PATH_TAG': 'acpi-MSFT1000_00', 'ID_NET_LINK_FILE': 
'/usr/lib/systemd/network/99-default.link', 'ID_NET_NAME': 'eth0', 
'SYSTEMD_ALIAS': '/sys/subsystem/net/devices/eth0', 'TAGS': ':systemd:', 
'CURRENT_TAGS': ':systemd:'})})
  [2025-10-03 14:31:00,408] validate_sku_config SKIPPED: no sku configuration 
for VM size 'Standard_E2ads_v6'
  [2025-10-03 14:31:00,408] success!

  And, in dmesg:

  [ 2477.205168] audit: type=1400 audit(1759494289.696:387): apparmor="STATUS" 
operation="profile_replace" profile="unconfined" name="lsblk" pid=4270 
comm="apparmor_parser"
  [ 2512.115007] audit: type=1400 audit(1759494324.607:388): apparmor="ALLOWED" 
operation="open" class="file" profile="lsblk" 
name="/sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0004:00/MSFT1000:00/70b4ac38-05b7-4efe-8862-db2456dfec84/pci05b7:00/05b7:00:00.0/nvme/nvme0/nvme0n1/"
 pid=4287 comm="lsblk" requested_mask="r" denied_mask="r" fsuid=0 ouid=0

  Actually, the tests are skipped as they need to be run inside an Azure
  VM, but in the CPC Azure squad, we run them manually as part of this
  package validation.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2126920/+subscriptions


-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to