Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'netlink-specs-remove-phantom-structs'

Jakub Kicinski says:

====================
netlink: specs: remove phantom structs

rt-netlink and nl80211 have a few structs which may be helpful for Python
decoding of binary attrs, but which don't actually exist in the C uAPI.
This prevents us from using struct pointers for binary types in C.

We could support this situation better in the codegen, or add these
structs to uAPI. That said Johannes suggested we remove the WiFi
structs for now, and the rt-link ones are semi-broken.
Drop the struct definitions, for now, if someone has a need to use
such structs in Python (as opposed to them being defined for completeness)
we can revist.

v1: https://lore.kernel.org/20250505170215.253672-1-kuba@kernel.org
====================

Link: https://patch.msgid.link/20250506194101.696272-1-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

+28 -222
-68
Documentation/netlink/specs/nl80211.yaml
··· 204 204 - sched-scan-random-mac-addr 205 205 - no-random-mac-addr 206 206 - 207 - name: ieee80211-mcs-info 208 - type: struct 209 - members: 210 - - 211 - name: rx-mask 212 - type: binary 213 - len: 10 214 - - 215 - name: rx-highest 216 - type: u16 217 - byte-order: little-endian 218 - - 219 - name: tx-params 220 - type: u8 221 - - 222 - name: reserved 223 - type: binary 224 - len: 3 225 - - 226 - name: ieee80211-vht-mcs-info 227 - type: struct 228 - members: 229 - - 230 - name: rx-mcs-map 231 - type: u16 232 - byte-order: little-endian 233 - - 234 - name: rx-highest 235 - type: u16 236 - byte-order: little-endian 237 - - 238 - name: tx-mcs-map 239 - type: u16 240 - byte-order: little-endian 241 - - 242 - name: tx-highest 243 - type: u16 244 - byte-order: little-endian 245 - - 246 - name: ieee80211-ht-cap 247 - type: struct 248 - members: 249 - - 250 - name: cap-info 251 - type: u16 252 - byte-order: little-endian 253 - - 254 - name: ampdu-params-info 255 - type: u8 256 - - 257 - name: mcs 258 - type: binary 259 - struct: ieee80211-mcs-info 260 - - 261 - name: extended-ht-cap-info 262 - type: u16 263 - byte-order: little-endian 264 - - 265 - name: tx-bf-cap-info 266 - type: u32 267 - byte-order: little-endian 268 - - 269 - name: antenna-selection-info 270 - type: u8 271 - - 272 207 name: channel-type 273 208 type: enum 274 209 entries: ··· 696 761 - 697 762 name: ht-capability-mask 698 763 type: binary 699 - struct: ieee80211-ht-cap 700 764 - 701 765 name: noack-map 702 766 type: u16 ··· 1316 1382 - 1317 1383 name: ht-mcs-set 1318 1384 type: binary 1319 - struct: ieee80211-mcs-info 1320 1385 - 1321 1386 name: ht-capa 1322 1387 type: u16 ··· 1328 1395 - 1329 1396 name: vht-mcs-set 1330 1397 type: binary 1331 - struct: ieee80211-vht-mcs-info 1332 1398 - 1333 1399 name: vht-capa 1334 1400 type: u32
+4 -6
Documentation/netlink/specs/ovs_datapath.yaml
··· 35 35 name: dispatch-upcall-per-cpu 36 36 doc: Allow per-cpu dispatch of upcalls 37 37 - 38 - name: datapath-stats 39 - enum-name: ovs-dp-stats 38 + name: ovs-dp-stats 40 39 type: struct 41 40 members: 42 41 - ··· 51 52 name: n-flows 52 53 type: u64 53 54 - 54 - name: megaflow-stats 55 - enum-name: ovs-dp-megaflow-stats 55 + name: ovs-dp-megaflow-stats 56 56 type: struct 57 57 members: 58 58 - ··· 86 88 - 87 89 name: stats 88 90 type: binary 89 - struct: datapath-stats 91 + struct: ovs-dp-stats 90 92 - 91 93 name: megaflow-stats 92 94 type: binary 93 - struct: megaflow-stats 95 + struct: ovs-dp-megaflow-stats 94 96 - 95 97 name: user-features 96 98 type: u32
+2 -3
Documentation/netlink/specs/ovs_vport.yaml
··· 23 23 name-prefix: ovs-vport-type- 24 24 entries: [ unspec, netdev, internal, gre, vxlan, geneve ] 25 25 - 26 - name: vport-stats 26 + name: ovs-vport-stats 27 27 type: struct 28 - enum-name: ovs-vport-stats 29 28 members: 30 29 - 31 30 name: rx-packets ··· 105 106 - 106 107 name: stats 107 108 type: binary 108 - struct: vport-stats 109 + struct: ovs-vport-stats 109 110 - 110 111 name: pad 111 112 type: unused
+22 -145
Documentation/netlink/specs/rt-link.yaml
··· 304 304 type: u8 305 305 - 306 306 name: ipv4-devconf 307 - type: struct 308 - members: 307 + enum-name: 308 + type: enum 309 + entries: 309 310 - 310 311 name: forwarding 311 - type: u32 312 312 - 313 313 name: mc-forwarding 314 - type: u32 315 314 - 316 315 name: proxy-arp 317 - type: u32 318 316 - 319 317 name: accept-redirects 320 - type: u32 321 318 - 322 319 name: secure-redirects 323 - type: u32 324 320 - 325 321 name: send-redirects 326 - type: u32 327 322 - 328 323 name: shared-media 329 - type: u32 330 324 - 331 325 name: rp-filter 332 - type: u32 333 326 - 334 327 name: accept-source-route 335 - type: u32 336 328 - 337 329 name: bootp-relay 338 - type: u32 339 330 - 340 331 name: log-martians 341 - type: u32 342 332 - 343 333 name: tag 344 - type: u32 345 334 - 346 335 name: arpfilter 347 - type: u32 348 336 - 349 337 name: medium-id 350 - type: u32 351 338 - 352 339 name: noxfrm 353 - type: u32 354 340 - 355 341 name: nopolicy 356 - type: u32 357 342 - 358 343 name: force-igmp-version 359 - type: u32 360 344 - 361 345 name: arp-announce 362 - type: u32 363 346 - 364 347 name: arp-ignore 365 - type: u32 366 348 - 367 349 name: promote-secondaries 368 - type: u32 369 350 - 370 351 name: arp-accept 371 - type: u32 372 352 - 373 353 name: arp-notify 374 - type: u32 375 354 - 376 355 name: accept-local 377 - type: u32 378 356 - 379 357 name: src-vmark 380 - type: u32 381 358 - 382 359 name: proxy-arp-pvlan 383 - type: u32 384 360 - 385 361 name: route-localnet 386 - type: u32 387 362 - 388 363 name: igmpv2-unsolicited-report-interval 389 - type: u32 390 364 - 391 365 name: igmpv3-unsolicited-report-interval 392 - type: u32 393 366 - 394 367 name: ignore-routes-with-linkdown 395 - type: u32 396 368 - 397 369 name: drop-unicast-in-l2-multicast 398 - type: u32 399 370 - 400 371 name: drop-gratuitous-arp 401 - type: u32 402 372 - 403 373 name: bc-forwarding 404 - type: u32 405 374 - 406 375 name: arp-evict-nocarrier 407 - type: u32 408 376 - 409 377 name: ipv6-devconf 410 - type: struct 411 - members: 378 + enum-name: 379 + type: enum 380 + entries: 412 381 - 413 382 name: forwarding 414 - type: u32 415 383 - 416 384 name: hoplimit 417 - type: u32 418 385 - 419 386 name: mtu6 420 - type: u32 421 387 - 422 388 name: accept-ra 423 - type: u32 424 389 - 425 390 name: accept-redirects 426 - type: u32 427 391 - 428 392 name: autoconf 429 - type: u32 430 393 - 431 394 name: dad-transmits 432 - type: u32 433 395 - 434 396 name: rtr-solicits 435 - type: u32 436 397 - 437 398 name: rtr-solicit-interval 438 - type: u32 439 399 - 440 400 name: rtr-solicit-delay 441 - type: u32 442 401 - 443 402 name: use-tempaddr 444 - type: u32 445 403 - 446 404 name: temp-valid-lft 447 - type: u32 448 405 - 449 406 name: temp-prefered-lft 450 - type: u32 451 407 - 452 408 name: regen-max-retry 453 - type: u32 454 409 - 455 410 name: max-desync-factor 456 - type: u32 457 411 - 458 412 name: max-addresses 459 - type: u32 460 413 - 461 414 name: force-mld-version 462 - type: u32 463 415 - 464 416 name: accept-ra-defrtr 465 - type: u32 466 417 - 467 418 name: accept-ra-pinfo 468 - type: u32 469 419 - 470 420 name: accept-ra-rtr-pref 471 - type: u32 472 421 - 473 422 name: rtr-probe-interval 474 - type: u32 475 423 - 476 424 name: accept-ra-rt-info-max-plen 477 - type: u32 478 425 - 479 426 name: proxy-ndp 480 - type: u32 481 427 - 482 428 name: optimistic-dad 483 - type: u32 484 429 - 485 430 name: accept-source-route 486 - type: u32 487 431 - 488 432 name: mc-forwarding 489 - type: u32 490 433 - 491 434 name: disable-ipv6 492 - type: u32 493 435 - 494 436 name: accept-dad 495 - type: u32 496 437 - 497 438 name: force-tllao 498 - type: u32 499 439 - 500 440 name: ndisc-notify 501 - type: u32 502 441 - 503 442 name: mldv1-unsolicited-report-interval 504 - type: u32 505 443 - 506 444 name: mldv2-unsolicited-report-interval 507 - type: u32 508 445 - 509 446 name: suppress-frag-ndisc 510 - type: u32 511 447 - 512 448 name: accept-ra-from-local 513 - type: u32 514 449 - 515 450 name: use-optimistic 516 - type: u32 517 451 - 518 452 name: accept-ra-mtu 519 - type: u32 520 453 - 521 454 name: stable-secret 522 - type: u32 523 455 - 524 456 name: use-oif-addrs-only 525 - type: u32 526 457 - 527 458 name: accept-ra-min-hop-limit 528 - type: u32 529 459 - 530 460 name: ignore-routes-with-linkdown 531 - type: u32 532 461 - 533 462 name: drop-unicast-in-l2-multicast 534 - type: u32 535 463 - 536 464 name: drop-unsolicited-na 537 - type: u32 538 465 - 539 466 name: keep-addr-on-down 540 - type: u32 541 467 - 542 468 name: rtr-solicit-max-interval 543 - type: u32 544 469 - 545 470 name: seg6-enabled 546 - type: u32 547 471 - 548 472 name: seg6-require-hmac 549 - type: u32 550 473 - 551 474 name: enhanced-dad 552 - type: u32 553 475 - 554 476 name: addr-gen-mode 555 - type: u8 556 477 - 557 478 name: disable-policy 558 - type: u32 559 479 - 560 480 name: accept-ra-rt-info-min-plen 561 - type: u32 562 481 - 563 482 name: ndisc-tclass 564 - type: u32 565 483 - 566 484 name: rpl-seg-enabled 567 - type: u32 568 485 - 569 486 name: ra-defrtr-metric 570 - type: u32 571 487 - 572 488 name: ioam6-enabled 573 - type: u32 574 489 - 575 490 name: ioam6-id 576 - type: u32 577 491 - 578 492 name: ioam6-id-wide 579 - type: u32 580 493 - 581 494 name: ndisc-evict-nocarrier 582 - type: u32 583 495 - 584 496 name: accept-untracked-na 585 - type: u32 586 497 - 587 498 name: ifla-icmp6-stats 588 - type: struct 589 - members: 499 + enum-name: 500 + type: enum 501 + entries: 502 + - 503 + name: num 590 504 - 591 505 name: inmsgs 592 - type: u64 593 506 - 594 507 name: inerrors 595 - type: u64 596 508 - 597 509 name: outmsgs 598 - type: u64 599 510 - 600 511 name: outerrors 601 - type: u64 602 512 - 603 513 name: csumerrors 604 - type: u64 605 514 - 606 515 name: ratelimithost 607 - type: u64 608 516 - 609 517 name: ifla-inet6-stats 610 - type: struct 611 - members: 518 + enum-name: 519 + type: enum 520 + entries: 521 + - 522 + name: num 612 523 - 613 524 name: inpkts 614 - type: u64 615 525 - 616 526 name: inoctets 617 - type: u64 618 527 - 619 528 name: indelivers 620 - type: u64 621 529 - 622 530 name: outforwdatagrams 623 - type: u64 624 531 - 625 532 name: outpkts 626 - type: u64 627 533 - 628 534 name: outoctets 629 - type: u64 630 535 - 631 536 name: inhdrerrors 632 - type: u64 633 537 - 634 538 name: intoobigerrors 635 - type: u64 636 539 - 637 540 name: innoroutes 638 - type: u64 639 541 - 640 542 name: inaddrerrors 641 - type: u64 642 543 - 643 544 name: inunknownprotos 644 - type: u64 645 545 - 646 546 name: intruncatedpkts 647 - type: u64 648 547 - 649 548 name: indiscards 650 - type: u64 651 549 - 652 550 name: outdiscards 653 - type: u64 654 551 - 655 552 name: outnoroutes 656 - type: u64 657 553 - 658 554 name: reasmtimeout 659 - type: u64 660 555 - 661 556 name: reasmreqds 662 - type: u64 663 557 - 664 558 name: reasmoks 665 - type: u64 666 559 - 667 560 name: reasmfails 668 - type: u64 669 561 - 670 562 name: fragoks 671 - type: u64 672 563 - 673 564 name: fragfails 674 - type: u64 675 565 - 676 566 name: fragcreates 677 - type: u64 678 567 - 679 568 name: inmcastpkts 680 - type: u64 681 569 - 682 570 name: outmcastpkts 683 - type: u64 684 571 - 685 572 name: inbcastpkts 686 - type: u64 687 573 - 688 574 name: outbcastpkts 689 - type: u64 690 575 - 691 576 name: inmcastoctets 692 - type: u64 693 577 - 694 578 name: outmcastoctets 695 - type: u64 696 579 - 697 580 name: inbcastoctets 698 - type: u64 699 581 - 700 582 name: outbcastoctets 701 - type: u64 702 583 - 703 584 name: csumerrors 704 - type: u64 705 585 - 706 586 name: noectpkts 707 - type: u64 708 587 - 709 588 name: ect1-pkts 710 - type: u64 711 589 - 712 590 name: ect0-pkts 713 - type: u64 714 591 - 715 592 name: cepkts 716 - type: u64 717 593 - 718 594 name: reasm-overlaps 719 - type: u64 720 595 - name: br-boolopt-multi 721 596 type: struct 722 597 members: ··· 2055 2180 - 2056 2181 name: conf 2057 2182 type: binary 2058 - struct: ipv4-devconf 2183 + sub-type: u32 2184 + doc: u32 indexed by ipv4-devconf - 1 on output, on input it's a nest 2059 2185 - 2060 2186 name: ifla6-attrs 2061 2187 name-prefix: ifla-inet6- ··· 2067 2191 - 2068 2192 name: conf 2069 2193 type: binary 2070 - struct: ipv6-devconf 2194 + sub-type: u32 2195 + doc: u32 indexed by ipv6-devconf - 1 on output, on input it's a nest 2071 2196 - 2072 2197 name: stats 2073 2198 type: binary 2074 - struct: ifla-inet6-stats 2199 + sub-type: u64 2075 2200 - 2076 2201 name: mcast 2077 2202 type: binary ··· 2083 2206 - 2084 2207 name: icmp6stats 2085 2208 type: binary 2086 - struct: ifla-icmp6-stats 2209 + sub-type: u64 2087 2210 - 2088 2211 name: token 2089 2212 type: binary