git: d889926162b4 - main - isci: Remove dead code
The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=d889926162b4a8575bd554416b5f1a987ce68a83 commit d889926162b4a8575bd554416b5f1a987ce68a83 Author: Warner Losh AuthorDate: 2025-02-02 17:18:04 + Commit: Warner Losh CommitDate: 2025-02-02 17:18:35 + isci: Remove dead code This code hasn't compiled for years, so just remove it. PR: 229954 Sponsored by: Netflix --- sys/dev/isci/scil/sci_abstract_list.c | 7 --- 1 file changed, 7 deletions(-) diff --git a/sys/dev/isci/scil/sci_abstract_list.c b/sys/dev/isci/scil/sci_abstract_list.c index 7c02e0b17156..1948043e2aed 100644 --- a/sys/dev/isci/scil/sci_abstract_list.c +++ b/sys/dev/isci/scil/sci_abstract_list.c @@ -230,13 +230,6 @@ void sci_abstract_list_print( while (alElement_p != NULL) { -#ifdef UNIT_TEST_DEBUG - /* Check to see if we found the object for which we are searching. */ - printf("ITEM next_p 0x%x prev_p 0x%x obj_p 0x%x, 0x%x\n", - alElement_p->next_p, - alElement_p->previous_p, - (U32*) (alElement_p->object_p)); -#endif alElement_p = alElement_p->next_p; } }
git: 6f659c9a49a0 - main - pci: Change device to function
The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=6f659c9a49a01b6451edc169534375479f402f6a commit 6f659c9a49a01b6451edc169534375479f402f6a Author: Warner Losh AuthorDate: 2025-02-02 17:25:14 + Commit: Warner Losh CommitDate: 2025-02-02 17:26:04 + pci: Change device to function It's functions that are placed into D3 for these value, not the device. PR: 259703 Sponsored by: Netflix --- sys/dev/pci/pci.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c index edebb718ec53..84db16587bde 100644 --- a/sys/dev/pci/pci.c +++ b/sys/dev/pci/pci.c @@ -353,8 +353,8 @@ static int pci_do_power_nodriver = 0; SYSCTL_INT(_hw_pci, OID_AUTO, do_power_nodriver, CTLFLAG_RWTUN, &pci_do_power_nodriver, 0, "Place a function into D3 state when no driver attaches to it. 0 means" -" disable. 1 means conservatively place devices into D3 state. 2 means" -" aggressively place devices into D3 state. 3 means put absolutely" +" disable. 1 means conservatively place function into D3 state. 2 means" +" aggressively place function into D3 state. 3 means put absolutely" " everything in D3 state."); int pci_do_power_resume = 1;
git: ead758a67a6b - main - pms: Fix always true condition
The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=ead758a67a6b584293cfe02cd6c5cbefb6a4926f commit ead758a67a6b584293cfe02cd6c5cbefb6a4926f Author: Svyatoslav AuthorDate: 2025-02-02 16:35:51 + Commit: Warner Losh CommitDate: 2025-02-02 16:35:51 + pms: Fix always true condition Although this is vendor code, and apparently abandoned vendor code at that, this is clearly a mistake and always true. It's unclear how to contribute back to the upstream at this point, alas. PR: 217745 Reviewed by: imp --- sys/dev/pms/RefTisa/sallsdk/spc/sampirsp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/pms/RefTisa/sallsdk/spc/sampirsp.c b/sys/dev/pms/RefTisa/sallsdk/spc/sampirsp.c index 541940c5fda8..6a45e954d315 100644 --- a/sys/dev/pms/RefTisa/sallsdk/spc/sampirsp.c +++ b/sys/dev/pms/RefTisa/sallsdk/spc/sampirsp.c @@ -7217,7 +7217,7 @@ GLOBAL bit32 mpiDekManagementRsp( agEvent.encryptOperation = OSSA_HW_ENCRYPT_DEK_INVALIDTE; } agEvent.status = status; - if (status == OSSA_MPI_ENC_ERR_ILLEGAL_DEK_PARAM || OSSA_MPI_ERR_DEK_MANAGEMENT_DEK_UNWRAP_FAIL) + if (status == OSSA_MPI_ENC_ERR_ILLEGAL_DEK_PARAM || status == OSSA_MPI_ERR_DEK_MANAGEMENT_DEK_UNWRAP_FAIL) { agEvent.eq = errorQualifier; }
git: 89baab967181 - main - Arm64/GicV3: Change default cache mode from GITS_BASER_CACHE_WAWB to GITS_BASER_CACHE_RAWAWB
The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=89baab96718180c1914f6246ef56f9294330915c commit 89baab96718180c1914f6246ef56f9294330915c Author: Poul-Henning Kamp AuthorDate: 2025-02-02 19:00:57 + Commit: Poul-Henning Kamp CommitDate: 2025-02-02 19:00:57 + Arm64/GicV3: Change default cache mode from GITS_BASER_CACHE_WAWB to GITS_BASER_CACHE_RAWAWB For not yet determined reasons, the Qualcom Snapdragon Elite will take no other value than RAWAWB, but we're basically OK with that, because that should be the most performant setting. Investigations are continuing. This patch makes the Lenovo T14sGen6 laptop to boot to multiuser, but very little else works. --- sys/arm64/arm64/gicv3_its.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/arm64/arm64/gicv3_its.c b/sys/arm64/arm64/gicv3_its.c index 4b554f2dc30a..9224e03dec52 100644 --- a/sys/arm64/arm64/gicv3_its.c +++ b/sys/arm64/arm64/gicv3_its.c @@ -532,7 +532,7 @@ gicv3_its_table_init(device_t dev, struct gicv3_its_softc *sc) cache = 0; } else { devbits = GITS_TYPER_DEVB(gic_its_read_8(sc, GITS_TYPER)); - cache = GITS_BASER_CACHE_WAWB; + cache = GITS_BASER_CACHE_RAWAWB; } sc->sc_devbits = devbits; share = GITS_BASER_SHARE_IS;
git: 6befd3511105 - main - kyua: Support require.diskspace ATF metadata
The branch main has been updated by igoro: URL: https://cgit.FreeBSD.org/src/commit/?id=6befd3511105a17decdafbf9d3f55324c83aaea1 commit 6befd3511105a17decdafbf9d3f55324c83aaea1 Author: Igor Ostapenko AuthorDate: 2025-02-02 19:14:55 + Commit: Igor Ostapenko CommitDate: 2025-02-02 19:14:55 + kyua: Support require.diskspace ATF metadata Reviewed by:ngie MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D48333 --- contrib/kyua/doc/kyuafile.5.in| 3 ++- contrib/kyua/engine/atf_list.cpp | 2 ++ contrib/kyua/engine/atf_list_test.cpp | 23 +++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/contrib/kyua/doc/kyuafile.5.in b/contrib/kyua/doc/kyuafile.5.in index 4fe5f12fd9b1..ae1e4fe40e32 100644 --- a/contrib/kyua/doc/kyuafile.5.in +++ b/contrib/kyua/doc/kyuafile.5.in @@ -282,7 +282,8 @@ ATF: .It Va required_disk_space Amount of available disk space that the test needs to run successfully. .Pp -ATF: not mapped +ATF: +.Va require.diskspace .It Va required_files Whitespace-separated list of paths that the test requires to exist before it can run. diff --git a/contrib/kyua/engine/atf_list.cpp b/contrib/kyua/engine/atf_list.cpp index c4f348ada2f6..f6ec20d7709a 100644 --- a/contrib/kyua/engine/atf_list.cpp +++ b/contrib/kyua/engine/atf_list.cpp @@ -129,6 +129,8 @@ engine::parse_atf_metadata(const model::properties_map& props) mdbuilder.set_string("is_exclusive", value); } else if (name == "require.config") { mdbuilder.set_string("required_configs", value); +} else if (name == "require.diskspace") { +mdbuilder.set_string("required_disk_space", value); } else if (name == "require.files") { mdbuilder.set_string("required_files", value); } else if (name == "require.machine") { diff --git a/contrib/kyua/engine/atf_list_test.cpp b/contrib/kyua/engine/atf_list_test.cpp index 7648ee2c6a80..f3a36ab864f7 100644 --- a/contrib/kyua/engine/atf_list_test.cpp +++ b/contrib/kyua/engine/atf_list_test.cpp @@ -67,6 +67,7 @@ ATF_TEST_CASE_BODY(parse_atf_metadata__override_all) properties["is.exclusive"] = "true"; properties["require.arch"] = "i386 x86_64"; properties["require.config"] = "var1 var2 var3"; +properties["require.diskspace"] = "10g"; properties["require.files"] = "/file1 /dir/file2"; properties["require.machine"] = "amd64"; properties["require.memory"] = "1m"; @@ -95,6 +96,7 @@ ATF_TEST_CASE_BODY(parse_atf_metadata__override_all) .set_description("Some text") .set_has_cleanup(true) .set_is_exclusive(true) +.set_required_disk_space(units::bytes::parse("10g")) .set_required_memory(units::bytes::parse("1m")) .set_required_user("root") .set_timeout(datetime::delta(123, 0)) @@ -293,6 +295,26 @@ ATF_TEST_CASE_BODY(parse_atf_list__is_exclusive_support) } +ATF_TEST_CASE_WITHOUT_HEAD(parse_atf_list__disk_space_support); +ATF_TEST_CASE_BODY(parse_atf_list__disk_space_support) +{ +const std::string text = +"Content-Type: application/X-atf-tp; version=\"1\"\n" +"\n" +"ident: first\n" +"require.diskspace: 123M\n"; +std::istringstream input(text); +const model::test_cases_map tests = engine::parse_atf_list(input); + +const model::test_cases_map exp_tests = model::test_cases_map_builder() +.add("first", model::metadata_builder() + .set_required_disk_space(units::bytes::parse("123M")) + .build()) +.build(); +ATF_REQUIRE_EQ(exp_tests, tests); +} + + ATF_INIT_TEST_CASES(tcs) { ATF_ADD_TEST_CASE(tcs, parse_atf_metadata__defaults); @@ -308,4 +330,5 @@ ATF_INIT_TEST_CASES(tcs) ATF_ADD_TEST_CASE(tcs, parse_atf_list__one_test_case_invalid_properties); ATF_ADD_TEST_CASE(tcs, parse_atf_list__many_test_cases); ATF_ADD_TEST_CASE(tcs, parse_atf_list__is_exclusive_support); +ATF_ADD_TEST_CASE(tcs, parse_atf_list__disk_space_support); }
git: 6472c6baee7b - main - sctp: don't specify pr_poll = sopoll_generic
The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=6472c6baee7b7f1069943391ca6d09e595b88445 commit 6472c6baee7b7f1069943391ca6d09e595b88445 Author: Gleb Smirnoff AuthorDate: 2025-02-03 05:28:41 + Commit: Gleb Smirnoff CommitDate: 2025-02-03 06:38:18 + sctp: don't specify pr_poll = sopoll_generic Trust the framework to set the generic methods. No functional change. --- sys/netinet/sctp_usrreq.c | 1 - sys/netinet6/sctp6_usrreq.c | 1 - 2 files changed, 2 deletions(-) diff --git a/sys/netinet/sctp_usrreq.c b/sys/netinet/sctp_usrreq.c index b9a3be5280ae..7fb7ab3418cf 100644 --- a/sys/netinet/sctp_usrreq.c +++ b/sys/netinet/sctp_usrreq.c @@ -7516,7 +7516,6 @@ sctp_peeraddr(struct socket *so, struct sockaddr *sa) .pr_control = in_control, \ .pr_close = sctp_close, \ .pr_detach =sctp_close, \ - .pr_sopoll =sopoll_generic, \ .pr_disconnect = sctp_disconnect, \ .pr_listen =sctp_listen,\ .pr_peeraddr = sctp_peeraddr, \ diff --git a/sys/netinet6/sctp6_usrreq.c b/sys/netinet6/sctp6_usrreq.c index 0f194821ea94..c0e758e9e12b 100644 --- a/sys/netinet6/sctp6_usrreq.c +++ b/sys/netinet6/sctp6_usrreq.c @@ -1094,7 +1094,6 @@ sctp6_getpeeraddr(struct socket *so, struct sockaddr *sa) .pr_control = in6_control,\ .pr_close = sctp6_close,\ .pr_detach =sctp6_close,\ - .pr_sopoll =sopoll_generic, \ .pr_disconnect = sctp_disconnect, \ .pr_listen =sctp_listen,\ .pr_peeraddr = sctp6_getpeeraddr, \
git: 815f2a61bfa4 - main - sockets: removed unused argument from sopoll()
The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=815f2a61bfa43bf46d79b34f081e2fac1dca1d3d commit 815f2a61bfa43bf46d79b34f081e2fac1dca1d3d Author: Gleb Smirnoff AuthorDate: 2025-02-03 05:36:17 + Commit: Gleb Smirnoff CommitDate: 2025-02-03 06:38:24 + sockets: removed unused argument from sopoll() --- sys/kern/sys_generic.c | 2 +- sys/kern/sys_socket.c | 2 +- sys/kern/uipc_domain.c | 3 +-- sys/kern/uipc_socket.c | 8 +++- sys/sys/protosw.h | 3 +-- sys/sys/socketvar.h| 6 ++ 6 files changed, 9 insertions(+), 15 deletions(-) diff --git a/sys/kern/sys_generic.c b/sys/kern/sys_generic.c index 6fc7d5d2eefa..a3722d771573 100644 --- a/sys/kern/sys_generic.c +++ b/sys/kern/sys_generic.c @@ -1817,7 +1817,7 @@ selsocket(struct socket *so, int events, struct timeval *tvp, struct thread *td) */ for (;;) { selfdalloc(td, NULL); - if (sopoll(so, events, NULL, td) != 0) { + if (sopoll(so, events, td) != 0) { error = 0; break; } diff --git a/sys/kern/sys_socket.c b/sys/kern/sys_socket.c index 9011aa31c44f..ec9fd615685b 100644 --- a/sys/kern/sys_socket.c +++ b/sys/kern/sys_socket.c @@ -288,7 +288,7 @@ soo_poll(struct file *fp, int events, struct ucred *active_cred, if (error) return (error); #endif - return (sopoll(so, events, fp->f_cred, td)); + return (sopoll(so, events, td)); } static int diff --git a/sys/kern/uipc_domain.c b/sys/kern/uipc_domain.c index c5296f12ba94..0d3c622fa9c0 100644 --- a/sys/kern/uipc_domain.c +++ b/sys/kern/uipc_domain.c @@ -177,8 +177,7 @@ pr_soreceive_notsupp(struct socket *so, struct sockaddr **paddr, } static int -pr_sopoll_notsupp(struct socket *so, int events, struct ucred *cred, -struct thread *td) +pr_sopoll_notsupp(struct socket *so, int events, struct thread *td) { return (EOPNOTSUPP); } diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 46a7053f2872..accd63642024 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -4405,20 +4405,18 @@ sohasoutofband(struct socket *so) } int -sopoll(struct socket *so, int events, struct ucred *active_cred, -struct thread *td) +sopoll(struct socket *so, int events, struct thread *td) { /* * We do not need to set or assert curvnet as long as everyone uses * sopoll_generic(). */ - return (so->so_proto->pr_sopoll(so, events, active_cred, td)); + return (so->so_proto->pr_sopoll(so, events, td)); } int -sopoll_generic(struct socket *so, int events, struct ucred *active_cred, -struct thread *td) +sopoll_generic(struct socket *so, int events, struct thread *td) { int revents; diff --git a/sys/sys/protosw.h b/sys/sys/protosw.h index f9d7e1c4bb69..941d377b1549 100644 --- a/sys/sys/protosw.h +++ b/sys/sys/protosw.h @@ -93,8 +93,7 @@ typedef int pr_sosend_t(struct socket *, struct sockaddr *, struct uio *, struct mbuf *, struct mbuf *, int, struct thread *); typedef intpr_soreceive_t(struct socket *, struct sockaddr **, struct uio *, struct mbuf **, struct mbuf **, int *); -typedef intpr_sopoll_t(struct socket *, int, struct ucred *, - struct thread *); +typedef intpr_sopoll_t(struct socket *, int, struct thread *); typedef void pr_sosetlabel_t(struct socket *); typedef void pr_close_t(struct socket *); typedef intpr_bindat_t(int, struct socket *, struct sockaddr *, diff --git a/sys/sys/socketvar.h b/sys/sys/socketvar.h index e818fd3fc757..57209ea5557f 100644 --- a/sys/sys/socketvar.h +++ b/sys/sys/socketvar.h @@ -525,10 +525,8 @@ struct socket * sonewconn(struct socket *head, int connstatus); struct socket * sopeeloff(struct socket *); -intsopoll(struct socket *so, int events, struct ucred *active_cred, - struct thread *td); -intsopoll_generic(struct socket *so, int events, - struct ucred *active_cred, struct thread *td); +intsopoll(struct socket *so, int events, struct thread *td); +intsopoll_generic(struct socket *so, int events, struct thread *td); intsoreceive(struct socket *so, struct sockaddr **paddr, struct uio *uio, struct mbuf **mp0, struct mbuf **controlp, int *flagsp); intsoreceive_stream(struct socket *so, struct sockaddr **paddr,
git: 9d7fb768543b - main - sockets: garbage collect SB_NOINTR
The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=9d7fb768543bbd1ddcd6a6d7bc2477838c59368f commit 9d7fb768543bbd1ddcd6a6d7bc2477838c59368f Author: Gleb Smirnoff AuthorDate: 2025-02-01 20:06:21 + Commit: Gleb Smirnoff CommitDate: 2025-02-03 06:38:18 + sockets: garbage collect SB_NOINTR Not used. All socket buffer sleeps are interruptible. --- sys/kern/uipc_debug.c| 4 sys/kern/uipc_sockbuf.c | 3 +-- sys/netsmb/smb_trantcp.c | 6 -- sys/sys/sockbuf.h| 2 +- 4 files changed, 2 insertions(+), 13 deletions(-) diff --git a/sys/kern/uipc_debug.c b/sys/kern/uipc_debug.c index 83cb7f6dc00a..bbd6c078fd06 100644 --- a/sys/kern/uipc_debug.c +++ b/sys/kern/uipc_debug.c @@ -328,10 +328,6 @@ db_print_sbflags(short sb_flags) db_printf("%sSB_UPCALL", comma ? ", " : ""); comma = 1; } - if (sb_flags & SB_NOINTR) { - db_printf("%sSB_NOINTR", comma ? ", " : ""); - comma = 1; - } if (sb_flags & SB_AIO) { db_printf("%sSB_AIO", comma ? ", " : ""); comma = 1; diff --git a/sys/kern/uipc_sockbuf.c b/sys/kern/uipc_sockbuf.c index 95c7241d5f13..e8d410b00c15 100644 --- a/sys/kern/uipc_sockbuf.c +++ b/sys/kern/uipc_sockbuf.c @@ -456,8 +456,7 @@ sbwait(struct socket *so, sb_which which) sb = sobuf(so, which); sb->sb_flags |= SB_WAIT; return (msleep_sbt(&sb->sb_acc, soeventmtx(so, which), - (sb->sb_flags & SB_NOINTR) ? PSOCK : PSOCK | PCATCH, "sbwait", - sb->sb_timeo, 0, 0)); + PSOCK | PCATCH, "sbwait", sb->sb_timeo, 0, 0)); } /* diff --git a/sys/netsmb/smb_trantcp.c b/sys/netsmb/smb_trantcp.c index f19eea45f265..fbbf987367d8 100644 --- a/sys/netsmb/smb_trantcp.c +++ b/sys/netsmb/smb_trantcp.c @@ -161,12 +161,6 @@ nb_connect_in(struct nbpcb *nbp, struct sockaddr_in *to, struct thread *td) goto bad; nb_setsockopt_int(so, SOL_SOCKET, SO_KEEPALIVE, 1); nb_setsockopt_int(so, IPPROTO_TCP, TCP_NODELAY, 1); - SOCKBUF_LOCK(&so->so_rcv); - so->so_rcv.sb_flags &= ~SB_NOINTR; - SOCKBUF_UNLOCK(&so->so_rcv); - SOCKBUF_LOCK(&so->so_snd); - so->so_snd.sb_flags &= ~SB_NOINTR; - SOCKBUF_UNLOCK(&so->so_snd); error = soconnect(so, (struct sockaddr*)to, td); if (error) goto bad; diff --git a/sys/sys/sockbuf.h b/sys/sys/sockbuf.h index fd503d021282..73dd7afa371f 100644 --- a/sys/sys/sockbuf.h +++ b/sys/sys/sockbuf.h @@ -40,7 +40,7 @@ #defineSB_SEL 0x08/* someone is selecting */ #defineSB_ASYNC0x10/* ASYNC I/O, need signals */ #defineSB_UPCALL 0x20/* someone wants an upcall */ -#defineSB_NOINTR 0x40/* operations not interruptible */ +/* was SB_NOINTR 0x40*/ #defineSB_AIO 0x80/* AIO operations queued */ #defineSB_KNOTE0x100 /* kernel note attached */ #defineSB_NOCOALESCE 0x200 /* don't coalesce new data into existing mbufs */
git: b0580c7a6742 - main - sockets: remove empty shim function sopoll()
The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=b0580c7a67423efb0c2bff7081ff9747d257c830 commit b0580c7a67423efb0c2bff7081ff9747d257c830 Author: Gleb Smirnoff AuthorDate: 2025-02-03 05:46:13 + Commit: Gleb Smirnoff CommitDate: 2025-02-03 06:38:28 + sockets: remove empty shim function sopoll() --- sys/kern/sys_generic.c | 3 ++- sys/kern/sys_socket.c | 2 +- sys/kern/uipc_socket.c | 15 ++- sys/sys/socketvar.h| 1 - 4 files changed, 5 insertions(+), 16 deletions(-) diff --git a/sys/kern/sys_generic.c b/sys/kern/sys_generic.c index a3722d771573..dd9c28e81388 100644 --- a/sys/kern/sys_generic.c +++ b/sys/kern/sys_generic.c @@ -49,6 +49,7 @@ #include #include #include +#include #include #include #include @@ -1817,7 +1818,7 @@ selsocket(struct socket *so, int events, struct timeval *tvp, struct thread *td) */ for (;;) { selfdalloc(td, NULL); - if (sopoll(so, events, td) != 0) { + if (so->so_proto->pr_sopoll(so, events, td) != 0) { error = 0; break; } diff --git a/sys/kern/sys_socket.c b/sys/kern/sys_socket.c index ec9fd615685b..33cfd1637b78 100644 --- a/sys/kern/sys_socket.c +++ b/sys/kern/sys_socket.c @@ -288,7 +288,7 @@ soo_poll(struct file *fp, int events, struct ucred *active_cred, if (error) return (error); #endif - return (sopoll(so, events, td)); + return (so->so_proto->pr_sopoll(so, events, td)); } static int diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index accd63642024..c4ebb43eef18 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -96,8 +96,8 @@ * NOTE: With regard to VNETs the general rule is that callers do not set * curvnet. Exceptions to this rule include soabort(), sodisconnect(), * sofree(), sorele(), sonewconn() and sorflush(), which are usually called - * from a pre-set VNET context. sopoll() currently does not need a VNET - * context to be set. + * from a pre-set VNET context. sopoll_generic() currently does not need a + * VNET context to be set. */ #include @@ -4404,17 +4404,6 @@ sohasoutofband(struct socket *so) selwakeuppri(&so->so_rdsel, PSOCK); } -int -sopoll(struct socket *so, int events, struct thread *td) -{ - - /* -* We do not need to set or assert curvnet as long as everyone uses -* sopoll_generic(). -*/ - return (so->so_proto->pr_sopoll(so, events, td)); -} - int sopoll_generic(struct socket *so, int events, struct thread *td) { diff --git a/sys/sys/socketvar.h b/sys/sys/socketvar.h index 57209ea5557f..6e2eb64ea0b8 100644 --- a/sys/sys/socketvar.h +++ b/sys/sys/socketvar.h @@ -525,7 +525,6 @@ struct socket * sonewconn(struct socket *head, int connstatus); struct socket * sopeeloff(struct socket *); -intsopoll(struct socket *so, int events, struct thread *td); intsopoll_generic(struct socket *so, int events, struct thread *td); intsoreceive(struct socket *so, struct sockaddr **paddr, struct uio *uio, struct mbuf **mp0, struct mbuf **controlp, int *flagsp);
git: 5deab77bb6d1 - main - bce: Fix register dumping to skip blank area
The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=5deab77bb6d119dd171385d144a622e7ba7108fe commit 5deab77bb6d119dd171385d144a622e7ba7108fe Author: Warner Losh AuthorDate: 2025-02-02 16:49:15 + Commit: Warner Losh CommitDate: 2025-02-02 16:49:15 + bce: Fix register dumping to skip blank area When compiling with debug enabled, this produces an always false warning. It's clear that this was to skip ranges that aren't used when dumping the registers, so change the && to || to skip things properly. PR: 200984 Sponsored by: Netflix --- sys/dev/bce/if_bce.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/bce/if_bce.c b/sys/dev/bce/if_bce.c index 73af49015e52..b0ba56099135 100644 --- a/sys/dev/bce/if_bce.c +++ b/sys/dev/bce/if_bce.c @@ -11082,7 +11082,7 @@ bce_dump_rxp_state(struct bce_softc *sc, int regs) for (int i = BCE_RXP_CPU_MODE; i < 0xe8fff; i += 0x10) { /* Skip the big blank sapces */ - if (i < 0xc5400 && i > 0xd) + if (i < 0xc5400 || i > 0xd) BCE_PRINTF("0x%04X: 0x%08X 0x%08X " "0x%08X 0x%08X\n", i, REG_RD_IND(sc, i), @@ -11200,7 +11200,7 @@ bce_dump_cp_state(struct bce_softc *sc, int regs) for (int i = BCE_CP_CPU_MODE; i < 0x1aa000; i += 0x10) { /* Skip the big blank spaces */ - if (i < 0x185400 && i > 0x19) + if (i < 0x185400 || i > 0x19) BCE_PRINTF("0x%04X: 0x%08X 0x%08X " "0x%08X 0x%08X\n", i, REG_RD_IND(sc, i),
git: 5a8caf9bfae2 - main - bce: make compile with BCE_DEBUG
The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=5a8caf9bfae280614ebd98df894a9d895aacd876 commit 5a8caf9bfae280614ebd98df894a9d895aacd876 Author: Warner Losh AuthorDate: 2025-02-02 16:57:01 + Commit: Warner Losh CommitDate: 2025-02-02 16:57:01 + bce: make compile with BCE_DEBUG Builds now with BCE_DEBUG defined. All bets are of as to whether or not it works though. This is not the default, and likely quite a rare config given (a) it's been broken for years and (b) this is an old card people aren't actively debugging anymore. I don't have the hardware to test it, though I've not changed anything in the BCE_DEBUG undefined case. Sponsored by: Netflix --- sys/dev/bce/if_bce.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/dev/bce/if_bce.c b/sys/dev/bce/if_bce.c index b0ba56099135..16bfce5338a7 100644 --- a/sys/dev/bce/if_bce.c +++ b/sys/dev/bce/if_bce.c @@ -1594,7 +1594,7 @@ bce_shutdown(device_t dev) static u32 bce_reg_rd(struct bce_softc *sc, u32 offset) { - u32 val = REG_RD(sc, offset); + u32 val = bus_space_read_4(sc->bce_btag, sc->bce_bhandle, offset); DBPRINT(sc, BCE_INSANE_REG, "%s(); offset = 0x%08X, val = 0x%08X\n", __FUNCTION__, offset, val); return val; @@ -1611,7 +1611,7 @@ bce_reg_wr16(struct bce_softc *sc, u32 offset, u16 val) { DBPRINT(sc, BCE_INSANE_REG, "%s(); offset = 0x%08X, val = 0x%04X\n", __FUNCTION__, offset, val); - REG_WR16(sc, offset, val); + bus_space_write_2(sc->bce_btag, sc->bce_bhandle, offset, val); } // @@ -1625,7 +1625,7 @@ bce_reg_wr(struct bce_softc *sc, u32 offset, u32 val) { DBPRINT(sc, BCE_INSANE_REG, "%s(); offset = 0x%08X, val = 0x%08X\n", __FUNCTION__, offset, val); - REG_WR(sc, offset, val); + bus_space_write_4(sc->bce_btag, sc->bce_bhandle, offset, val); } #endif @@ -5780,7 +5780,7 @@ bce_fill_rx_chain(struct bce_softc *sc) /* We should never end up pointing to a next page pointer. */ DBRUNIF(((prod & USABLE_RX_BD_PER_PAGE) == USABLE_RX_BD_PER_PAGE), BCE_PRINTF("%s(): Invalid rx_prod value: 0x%04X\n", - __FUNCTION__, rx_prod)); + __FUNCTION__, sc->rx_prod)); /* Write the mailbox and tell the chip about the waiting rx_bd's. */ REG_WR16(sc, MB_GET_CID_ADDR(RX_CID) + BCE_L2MQ_RX_HOST_BDIDX, prod); @@ -5944,7 +5944,7 @@ bce_fill_pg_chain(struct bce_softc *sc) DBRUNIF(((prod & USABLE_RX_BD_PER_PAGE) == USABLE_RX_BD_PER_PAGE), BCE_PRINTF("%s(): Invalid pg_prod value: 0x%04X\n", - __FUNCTION__, pg_prod)); + __FUNCTION__, sc->pg_prod)); /* * Write the mailbox and tell the chip about @@ -9030,7 +9030,7 @@ bce_add_sysctls(struct bce_softc *sc) CTLFLAG_RW, &bootcode_running_failure_sim_control, 0, "Debug control to force bootcode running failures"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_U16(ctx, children, OID_AUTO, "rx_low_watermark", CTLFLAG_RD, &sc->rx_low_watermark, 0, "Lowest level of free rx_bd's"); @@ -9040,7 +9040,7 @@ bce_add_sysctls(struct bce_softc *sc) CTLFLAG_RD, &sc->rx_empty_count, "Number of times the RX chain was empty"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_U16(ctx, children, OID_AUTO, "tx_hi_watermark", CTLFLAG_RD, &sc->tx_hi_watermark, 0, "Highest level of used tx_bd's");