svn commit: r288210 - head/share/mk
Author: bdrewery Date: Fri Sep 25 05:15:27 2015 New Revision: 288210 URL: https://svnweb.freebsd.org/changeset/base/288210 Log: META_MODE: Fix staging not respecting _DIR overrides. This fixes atf-c.h not properly being installed to /usr/include/ (in the stagedir) via its override of 'INCSDIR_atf-c.h= ${INCLUDEDIR}'. This fixes building things that depend on atf. Staging seems to ignore OWN/GRP/MODE settings and needs further exploration. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.files.mk head/share/mk/bsd.incs.mk Modified: head/share/mk/bsd.files.mk == --- head/share/mk/bsd.files.mk Fri Sep 25 03:54:10 2015(r288209) +++ head/share/mk/bsd.files.mk Fri Sep 25 05:15:27 2015(r288210) @@ -47,10 +47,12 @@ ${group}NAME_${file:T}?=${${group}NAME} ${group}NAME_${file:T}?= ${file:T} .endif .if !make(buildincludes) -STAGE_AS_SETS+=${group} +STAGE_AS_SETS+=${file:T} .endif STAGE_AS_${file:T}= ${${group}NAME_${file:T}} -stage_as.${group}: ${file} +# XXX {group}OWN,GRP,MODE +STAGE_DIR.${file:T}= ${STAGE_OBJTOP}${${group}DIR_${file:T}} +stage_as.${file:T}: ${file} installfiles-${group}: _${group}INS_${file:T} _${group}INS_${file:T}: ${file} Modified: head/share/mk/bsd.incs.mk == --- head/share/mk/bsd.incs.mk Fri Sep 25 03:54:10 2015(r288209) +++ head/share/mk/bsd.incs.mk Fri Sep 25 05:15:27 2015(r288210) @@ -42,10 +42,12 @@ ${group}NAME_${header:T}?= ${${group}NAM .else ${group}NAME_${header:T}?= ${header:T} .endif -STAGE_AS_SETS+= ${group} +STAGE_AS_SETS+= ${header:T} STAGE_AS_${header:T}= ${${group}NAME_${header:T}} -stage_as.${group}: ${header} -stage_includes: stage_as.${group} +# XXX {group}OWN,GRP,MODE +STAGE_DIR.${header:T}= ${STAGE_OBJTOP}${${group}DIR_${header:T}} +stage_as.${header:T}: ${header} +stage_includes: stage_as.${header:T} installincludes: _${group}INS_${header:T} _${group}INS_${header:T}: ${header} ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288209 - stable/10/usr.sbin/ctld
Author: jpaetzel Date: Fri Sep 25 03:54:10 2015 New Revision: 288209 URL: https://svnweb.freebsd.org/changeset/base/288209 Log: MFC 288208 Fix typo. Sponsored by: iXsystems Modified: stable/10/usr.sbin/ctld/ctld.c Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.sbin/ctld/ctld.c == --- stable/10/usr.sbin/ctld/ctld.c Fri Sep 25 03:46:06 2015 (r288208) +++ stable/10/usr.sbin/ctld/ctld.c Fri Sep 25 03:54:10 2015 (r288209) @@ -1132,7 +1132,7 @@ valid_iscsi_name(const char *name) } } else { log_warnx("invalid target name \"%s\"; should start with " - "either \".iqn\", \"eui.\", or \"naa.\"", + "either \"iqn.\", \"eui.\", or \"naa.\"", name); } return (true); ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288208 - head/usr.sbin/ctld
Author: jpaetzel Date: Fri Sep 25 03:46:06 2015 New Revision: 288208 URL: https://svnweb.freebsd.org/changeset/base/288208 Log: Fix typo. Sponsored by: iXsystems Modified: head/usr.sbin/ctld/ctld.c Modified: head/usr.sbin/ctld/ctld.c == --- head/usr.sbin/ctld/ctld.c Fri Sep 25 02:52:54 2015(r288207) +++ head/usr.sbin/ctld/ctld.c Fri Sep 25 03:46:06 2015(r288208) @@ -1149,7 +1149,7 @@ valid_iscsi_name(const char *name) } } else { log_warnx("invalid target name \"%s\"; should start with " - "either \".iqn\", \"eui.\", or \"naa.\"", + "either \"iqn.\", \"eui.\", or \"naa.\"", name); } return (true); ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288207 - head/share/vt/fonts
Author: emaste Date: Fri Sep 25 02:52:54 2015 New Revision: 288207 URL: https://svnweb.freebsd.org/changeset/base/288207 Log: Add double size 16x32 VGA ROM font This was created from vgarom-8x16.hex, and should be useful for higher resolution displays. Sponsored by: The FreeBSD Foundation Added: head/share/vt/fonts/vgarom-16x32.hex (contents, props changed) Modified: head/share/vt/fonts/Makefile Modified: head/share/vt/fonts/Makefile == --- head/share/vt/fonts/MakefileFri Sep 25 01:17:52 2015 (r288206) +++ head/share/vt/fonts/MakefileFri Sep 25 02:52:54 2015 (r288207) @@ -4,6 +4,7 @@ FILES= gallant.fnt \ vgarom-8x8.fnt \ vgarom-8x14.fnt \ vgarom-8x16.fnt \ + vgarom-16x32.fnt \ vgarom-thin-8x8.fnt \ vgarom-thin-8x16.fnt Added: head/share/vt/fonts/vgarom-16x32.hex == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/share/vt/fonts/vgarom-16x32.hexFri Sep 25 02:52:54 2015 (r288207) @@ -0,0 +1,587 @@ +# $FreeBSD$ +# Height: 32 +# Width: 16 +: +0020: +0021:03C003C00FF00FF00FF00FF00FF00FF003C003C003C003C003C003C003C003C003C003C0 +0022:3C3C3C3C3C3C3C3C3C3C3C3C0C300C30 +0023:3CF03CF03CF03CF0FFFCFFFC3CF03CF03CF03CF03CF03CF0FFFCFFFC3CF03CF03CF03CF0 +0024:03C003C003C003C03FF03FF0F03CF03CF00CF00CF000F0003FF03FF0003C003C003C003CC03CC03CF03CF03C3FF03FF003C003C003C003C0 +0025:F00CF00CF03CF03C00F000F003C003C00F000F003C003C00F03CF03CC03CC03C +0026:0FC00FC03CF03CF03CF03CF00FC00FC03F3C3F3CF3F0F3F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C +0027:0F000F000F000F000F000F003C003C00 +0028:00F000F003C003C00F000F000F000F000F000F000F000F000F000F000F000F0003C003C000F000F0 +0029:0F000F0003C003C000F000F000F000F000F000F000F000F000F000F000F000F003C003C00F000F00 +002A:3C3C3C3C0FF00FF00FF00FF03C3C3C3C +002B:03C003C003C003C03FFC3FFC03C003C003C003C0 +002C:03C003C003C003C003C003C00F000F00 +002D:FFFCFFFC +002E:03C003C003C003C0 +002F:000C000C003C003C00F000F003C003C00F000F003C003C00F000F000C000C000 +0030:0FC00FC03CF03CF0F03CF03CF03CF03CF33CF33CF33CF33CF03CF03CF03CF03C3CF03CF00FC00FC0 +0031:03C003C00FC00FC03FC03FC003C003C003C003C003C003C003C003C003C003C003C003C03FFC3FFC +0032:3FF03FF0F03CF03C003C003C00F000F003C003C00F000F003C003C00F000F000F03CF03CFFFCFFFC +0033:3FF03FF0F03CF03C003C003C003C003C0FF00FF0003C003C003C003C003C003CF03CF03C3FF03FF0 +0034:00F000F003F003F00FF00FF03CF03CF0F0F0F0F0FFFCFFFC00F000F000F000F000F000F003FC03FC +0035:FFFCFFFCF000F000F000F000F000F000FFF0FFF0003C003C003C003C003C003CF03CF03C3FF03FF0 +0036:0FC00FC03C003C00F000F000F000F000FFF0FFF0F03CF03CF03CF03CF03CF03CF03CF03C3FF03FF0 +0037:FFFCFFFCF03CF03C003C003C003C003C00F000F003C003C00F000F000F000F000F000F000F000F00 +0038:3FF03FF0F03CF03CF03CF03CF03CF03C3FF03FF0F03CF03CF03CF03CF03CF03CF03CF03C3FF03FF0 +0039:3FF03FF0F03CF03CF03CF03CF03CF03C3FFC3FFC003C003C003C003C003C003C00F000F03FC03FC0 +003A:03C003C003C003C003C003C003C003C00
svn commit: r288206 - stable/9/usr.sbin/gstat
Author: delphij Date: Fri Sep 25 01:17:52 2015 New Revision: 288206 URL: https://svnweb.freebsd.org/changeset/base/288206 Log: MFC r287650: Use strlcpy() in favor of strncpy() as it's defined to have a nul character at the end of string buffer, and the code context do expects this to behave correctly (e.g. strchr). Modified: stable/9/usr.sbin/gstat/gstat.c Directory Properties: stable/9/usr.sbin/gstat/ (props changed) Modified: stable/9/usr.sbin/gstat/gstat.c == --- stable/9/usr.sbin/gstat/gstat.c Fri Sep 25 01:17:24 2015 (r288205) +++ stable/9/usr.sbin/gstat/gstat.c Fri Sep 25 01:17:52 2015 (r288206) @@ -124,7 +124,7 @@ main(int argc, char **argv) if (regcomp(&f_re, optarg, REG_EXTENDED) != 0) errx(EX_USAGE, "Invalid filter - see re_format(7)"); - strncpy(f_s, optarg, sizeof(f_s)); + strlcpy(f_s, optarg, sizeof(f_s)); break; case 'I': p = NULL; @@ -210,7 +210,7 @@ main(int argc, char **argv) getyx(stdscr, cury, curx); getmaxyx(stdscr, maxy, maxx); } - strncpy(pf_s, f_s, sizeof(pf_s)); + strlcpy(pf_s, f_s, sizeof(pf_s)); max_flen = maxx - curx - 1; if ((int)strlen(f_s) > max_flen && max_flen >= 0) { if (max_flen > 3) @@ -382,7 +382,7 @@ main(int argc, char **argv) err(1, "el_gets"); if (line_len > 1) history(hist, &hist_ev, H_ENTER, line); - strncpy(tmp_f_s, line, sizeof(f_s)); + strlcpy(tmp_f_s, line, sizeof(f_s)); if ((p = strchr(tmp_f_s, '\n')) != NULL) *p = '\0'; /* @@ -399,7 +399,7 @@ main(int argc, char **argv) refresh(); sleep(1); } else { - strncpy(f_s, tmp_f_s, sizeof(f_s)); + strlcpy(f_s, tmp_f_s, sizeof(f_s)); f_re = tmp_f_re; } break; ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288205 - stable/10/usr.sbin/gstat
Author: delphij Date: Fri Sep 25 01:17:24 2015 New Revision: 288205 URL: https://svnweb.freebsd.org/changeset/base/288205 Log: MFC r287650: Use strlcpy() in favor of strncpy() as it's defined to have a nul character at the end of string buffer, and the code context do expects this to behave correctly (e.g. strchr). Modified: stable/10/usr.sbin/gstat/gstat.c Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.sbin/gstat/gstat.c == --- stable/10/usr.sbin/gstat/gstat.cFri Sep 25 01:05:44 2015 (r288204) +++ stable/10/usr.sbin/gstat/gstat.cFri Sep 25 01:17:24 2015 (r288205) @@ -124,7 +124,7 @@ main(int argc, char **argv) if (regcomp(&f_re, optarg, REG_EXTENDED) != 0) errx(EX_USAGE, "Invalid filter - see re_format(7)"); - strncpy(f_s, optarg, sizeof(f_s)); + strlcpy(f_s, optarg, sizeof(f_s)); break; case 'o': flag_o = 1; @@ -216,7 +216,7 @@ main(int argc, char **argv) getyx(stdscr, cury, curx); getmaxyx(stdscr, maxy, maxx); } - strncpy(pf_s, f_s, sizeof(pf_s)); + strlcpy(pf_s, f_s, sizeof(pf_s)); max_flen = maxx - curx - 1; if ((int)strlen(f_s) > max_flen && max_flen >= 0) { if (max_flen > 3) @@ -406,7 +406,7 @@ main(int argc, char **argv) err(1, "el_gets"); if (line_len > 1) history(hist, &hist_ev, H_ENTER, line); - strncpy(tmp_f_s, line, sizeof(f_s)); + strlcpy(tmp_f_s, line, sizeof(f_s)); if ((p = strchr(tmp_f_s, '\n')) != NULL) *p = '\0'; /* @@ -423,7 +423,7 @@ main(int argc, char **argv) refresh(); sleep(1); } else { - strncpy(f_s, tmp_f_s, sizeof(f_s)); + strlcpy(f_s, tmp_f_s, sizeof(f_s)); f_re = tmp_f_re; } break; ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288204 - in head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys
Author: delphij Date: Fri Sep 25 01:05:44 2015 New Revision: 288204 URL: https://svnweb.freebsd.org/changeset/base/288204 Log: MFV r288063: make dataset property de-registration operation O(1) A change to a property on a dataset must be propagated to its descendants in case that property is inherited. For datasets whose information is not currently loaded into memory (e.g. a snapshot that isn't currently mounted), there is nothing to do; the property change will take effect the next time that dataset is loaded. To handle updates to datasets that are in-core, ZFS registers a callback entry for each property of each loaded dataset with the dsl directory that holds that dataset. There is a dsl directory associated with each live dataset that references both the live dataset and any snapshots of the live dataset. A property change is effected by doing a traversal of the tree of dsl directories for a pool, starting at the directory sourcing the change, and invoking these callbacks. The current implementation both registers and de-registers properties individually for each loaded dataset. While registration for a property is O(1) (insert into a list), de-registration is O(n) (search list and then remove). The 'n' for de-registration, however, is not limited to the size (number of snapshots + 1) of the dsl directory. The eviction portion of the life cycle for the in core state of datasets is asynchronous, which allows multiple copies of the dataset information to be in-core at once. Only one of these copies is active at any time with the rest going through tear down processing, but all copies contribute to the cost of performing a dsl_prop_unregister(). One way to create multiple, in-flight copies of dataset information is by performing "zfs list" operations from multiple threads concurrently. In-core dataset information is loaded on demand and then evicted when reference counts drops to zero. For datasets that are not mounted, there is no persistent reference count to keep them resident. So, a list operation will load them, compute the information required to do the list operation, and then evict them. When performing this operation from multiple threads it is possible that some of the in-core dataset information will be reused, but also possible to lose the race and load the dataset again, even while the same information is being torn down. Compounding the performance issue further is a change made for illumos issue 5056 which made dataset eviction single threaded. In environments using automation to manage ZFS datasets, it is now possible to create enough of a backlog of dataset evictions to consume excessive amounts of kernel memory and to bog down the system. The fix employed here is to make property de-registration O(1). With this change in place, it is hoped that a single thread is more than sufficient to handle eviction processing. If it isn't, the problem can be solved by increasing the number of threads devoted to the eviction taskq. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dir.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_prop.h: Associate dsl property callback records with both the dsl directory and the dsl dataset that is registering the callback. Both connections are protected by the dsl directory's "dd_lock". When linking callbacks into a dsl directory, group them by the property type. This helps reduce the space penalty for the double association (the property name pointer is stored once per dsl_dir instead of in each record) and reduces the number of strcmp() calls required to do callback processing when updating a single property. Property types are stored in a linked list since currently ZFS registers a maximum of 10 property types for each dataset. Note that the property buckets/records associated with a dsl directory are created on demand, but only freed when the dsl directory is freed. Given the static nature of property types and their small number, there is no benefit to freeing the few bytes of memory used to represent the property record earlier. When a property record becomes empty, the dsl directory is either going to become unreferenced a little later in this thread of execution, or there is a high chance that another dataset is going to be loaded that would recreate the bucket anyway. Replace dsl_prop_unregister() with dsl_prop_unregister_all(). All callers of dsl_prop_unregister() are trying to remove all property registrations for a given dsl dataset any
svn commit: r288203 - head
Author: emaste Date: Fri Sep 25 00:30:53 2015 New Revision: 288203 URL: https://svnweb.freebsd.org/changeset/base/288203 Log: Remove EOL whitespace from Makefile.inc1 Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 == --- head/Makefile.inc1 Fri Sep 25 00:23:36 2015(r288202) +++ head/Makefile.inc1 Fri Sep 25 00:30:53 2015(r288203) @@ -267,7 +267,7 @@ BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \ MK_CLANG_EXTRAS=no MK_CLANG_FULL=no \ MK_LLDB=no MK_TESTS=no \ - MK_INCLUDES=yes + MK_INCLUDES=yes # build-tools stage TMAKE= MAKEOBJDIRPREFIX=${OBJTREE} \ @@ -1255,7 +1255,7 @@ update: # ELF Tool Chain libraries are needed for ELF tools and dtrace tools. .if ${BOOTSTRAPPING} < 116 -_elftoolchain_libs= lib/libelf lib/libdwarf +_elftoolchain_libs= lib/libelf lib/libdwarf .endif legacy: @@ -1279,7 +1279,7 @@ legacy: # binaries is usually quite narrow. Bootstrap tools use the host's compiler and # libraries, augmented by -legacy. # -_bt= _bootstrap-tools +_bt= _bootstrap-tools .if ${MK_GAMES} != "no" _strfile= games/fortune/strfile ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288202 - stable/10/usr.bin/ar
Author: emaste Date: Fri Sep 25 00:23:36 2015 New Revision: 288202 URL: https://svnweb.freebsd.org/changeset/base/288202 Log: MFC r286010: ar: enable deterministic mode by default Ar cannot handle UIDs with more than 6 digits, and storing the mtime, uid, gid and mode provides little to negative value anyhow for ar's uses. Turn on deterministic (-D) mode by default; it can be disabled by the user with -U. Also MFC follow-on fixes in r286024 and r287324. PR: 196929 Relnotes: Yes Sponsored by: The FreeBSD Foundation Modified: stable/10/usr.bin/ar/ar.1 stable/10/usr.bin/ar/ar.c Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.bin/ar/ar.1 == --- stable/10/usr.bin/ar/ar.1 Fri Sep 25 00:07:31 2015(r288201) +++ stable/10/usr.bin/ar/ar.1 Fri Sep 25 00:23:36 2015(r288202) @@ -23,7 +23,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 31, 2015 +.Dd September 24, 2015 .Dt AR 1 .Os .Sh NAME @@ -210,6 +210,7 @@ and 0644 instead of file mode from the m .Ar . This ensures that checksums on the resulting archives are reproducible when member contents are identical. +This option is enabled by default. If multiple .Fl D and Modified: stable/10/usr.bin/ar/ar.c == --- stable/10/usr.bin/ar/ar.c Fri Sep 25 00:07:31 2015(r288201) +++ stable/10/usr.bin/ar/ar.c Fri Sep 25 00:23:36 2015(r288202) @@ -100,10 +100,12 @@ main(int argc, char **argv) struct bsdar*bsdar, bsdar_storage; char*p; size_t len; - int i, opt; + int i, opt, Dflag, Uflag; bsdar = &bsdar_storage; memset(bsdar, 0, sizeof(*bsdar)); + Dflag = 0; + Uflag = 0; if ((bsdar->progname = getprogname()) == NULL) bsdar->progname = "ar"; @@ -120,10 +122,12 @@ main(int argc, char **argv) /* Ignored. */ break; case 'D': - bsdar->options |= AR_D; + Dflag = 1; + Uflag = 0; break; case 'U': - bsdar->options &= ~AR_D; + Uflag = 1; + Dflag = 0; break; case 'V': ranlib_version(); @@ -140,6 +144,9 @@ main(int argc, char **argv) if (*argv == NULL) ranlib_usage(); + /* Enable determinstic mode unless -U is set. */ + if (Uflag == 0) + bsdar->options |= AR_D; bsdar->options |= AR_S; while ((bsdar->filename = *argv++) != NULL) ar_mode_s(bsdar); @@ -180,7 +187,8 @@ main(int argc, char **argv) set_mode(bsdar, opt); break; case 'D': - bsdar->options |= AR_D; + Dflag = 1; + Uflag = 0; break; case 'f': case 'T': @@ -220,7 +228,8 @@ main(int argc, char **argv) set_mode(bsdar, opt); break; case 'U': - bsdar->options &= ~AR_D; + Uflag = 1; + Dflag = 0; break; case 'u': bsdar->options |= AR_U; @@ -273,6 +282,10 @@ main(int argc, char **argv) argv++; } + /* Set determinstic mode for -D, and by default without -U. */ + if (Dflag || (Uflag == 0 && (bsdar->mode == 'q' || bsdar->mode == 'r'))) + bsdar->options |= AR_D; + if (bsdar->options & AR_A) only_mode(bsdar, "-a", "mqr"); if (bsdar->options & AR_B) @@ -281,8 +294,10 @@ main(int argc, char **argv) only_mode(bsdar, "-c", "qr"); if (bsdar->options & AR_CC) only_mode(bsdar, "-C", "x"); - if (bsdar->options & AR_D) + if (Dflag) only_mode(bsdar, "-D", "qr"); + if (Uflag) + only_mode(bsdar, "-U", "qr"); if (bsdar->options & AR_O) only_mode(bsdar, "-o", "x"); if (bsdar->options & AR_SS) ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288201 - head/share/mk
Author: bdrewery Date: Fri Sep 25 00:07:31 2015 New Revision: 288201 URL: https://svnweb.freebsd.org/changeset/base/288201 Log: Don't recurse with cleanobj. bsd.obj.mk handles the needs fine. When an objdir exists it will just rm -Rf the objdir. When it does not exist though it will call 'clean' and 'cleandepend', which properly recurse in bsd.progs.mk. MFC after:2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.progs.mk Modified: head/share/mk/bsd.progs.mk == --- head/share/mk/bsd.progs.mk Thu Sep 24 23:23:58 2015(r288200) +++ head/share/mk/bsd.progs.mk Fri Sep 25 00:07:31 2015(r288201) @@ -84,7 +84,7 @@ $v = .if !empty(PROGS) && !defined(_RECURSING_PROGS) # tell progs.mk we might want to install things -PROGS_TARGETS+= checkdpadd clean cleandepend cleandir cleanobj depend install +PROGS_TARGETS+= checkdpadd clean cleandepend cleandir depend install .for p in ${PROGS} .if defined(PROGS_CXX) && !empty(PROGS_CXX:M$p) ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288200 - in head/kerberos5: libexec/kdigest usr.bin/hxtool usr.bin/kadmin usr.bin/kcc usr.sbin/iprop-log
Author: bdrewery Date: Thu Sep 24 23:23:58 2015 New Revision: 288200 URL: https://svnweb.freebsd.org/changeset/base/288200 Log: Remove unneeded dependency of '.o: .h' that bsd.prog.mk already handles. MFC after:2 weeks X-MFC-With: r288198 Sponsored by: EMC / Isilon Storage Division Modified: head/kerberos5/libexec/kdigest/Makefile head/kerberos5/usr.bin/hxtool/Makefile head/kerberos5/usr.bin/kadmin/Makefile head/kerberos5/usr.bin/kcc/Makefile head/kerberos5/usr.sbin/iprop-log/Makefile Modified: head/kerberos5/libexec/kdigest/Makefile == --- head/kerberos5/libexec/kdigest/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/libexec/kdigest/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -15,9 +15,7 @@ CLEANFILES= kdigest-commands.h kdigest-c kdigest-commands.h: kdigest-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -kdigest-commands.${ext}: kdigest-commands.h -.endfor +kdigest-commands.c: kdigest-commands.h .include Modified: head/kerberos5/usr.bin/hxtool/Makefile == --- head/kerberos5/usr.bin/hxtool/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/usr.bin/hxtool/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -14,9 +14,7 @@ CLEANFILES= hxtool-commands.h hxtool-com hxtool-commands.h: hxtool-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -hxtool-commands.${ext}: hxtool-commands.h -.endfor +hxtool-commands.c: hxtool-commands.h .include Modified: head/kerberos5/usr.bin/kadmin/Makefile == --- head/kerberos5/usr.bin/kadmin/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/usr.bin/kadmin/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -38,9 +38,7 @@ CLEANFILES= kadmin-commands.h kadmin-com kadmin-commands.h: ${KRB5DIR}/kadmin/kadmin-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in o c -kadmin-commands.${ext}: kadmin-commands.h -.endfor +kadmin-commands.c: kadmin-commands.h .PATH: ${KRB5DIR}/kadmin Modified: head/kerberos5/usr.bin/kcc/Makefile == --- head/kerberos5/usr.bin/kcc/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/usr.bin/kcc/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -21,9 +21,7 @@ CLEANFILES= kcc-commands.h kcc-commands. kcc-commands.h: kcc-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -kcc-commands.${ext}: kcc-commands.h -.endfor +kcc-commands.c: kcc-commands.h .include Modified: head/kerberos5/usr.sbin/iprop-log/Makefile == --- head/kerberos5/usr.sbin/iprop-log/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/usr.sbin/iprop-log/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -16,9 +16,7 @@ CLEANFILES= iprop-commands.h iprop-comma iprop-commands.h: iprop-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -iprop-commands.${ext}: iprop-commands.h -.endfor +iprop-commands.c: iprop-commands.h .include ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288199 - in head: gnu/usr.bin/binutils/libbfd kerberos5/libexec/kdigest kerberos5/usr.bin/hxtool kerberos5/usr.bin/kadmin kerberos5/usr.bin/kcc kerberos5/usr.sbin/iprop-log kerberos5/u...
Author: bdrewery Date: Thu Sep 24 23:15:24 2015 New Revision: 288199 URL: https://svnweb.freebsd.org/changeset/base/288199 Log: Add missing CLEANFILES. MFC after:1 week Sponsored by: EMC / Isilon Storage Division Modified: head/gnu/usr.bin/binutils/libbfd/Makefile.i386 head/kerberos5/libexec/kdigest/Makefile head/kerberos5/usr.bin/hxtool/Makefile head/kerberos5/usr.bin/kadmin/Makefile head/kerberos5/usr.bin/kcc/Makefile head/kerberos5/usr.sbin/iprop-log/Makefile head/kerberos5/usr.sbin/ktutil/Makefile head/lib/clang/include/Makefile head/lib/libc/tests/gen/posix_spawn/Makefile head/usr.bin/yacc/tests/Makefile head/usr.sbin/vigr/Makefile Modified: head/gnu/usr.bin/binutils/libbfd/Makefile.i386 == --- head/gnu/usr.bin/binutils/libbfd/Makefile.i386 Thu Sep 24 23:08:33 2015(r288198) +++ head/gnu/usr.bin/binutils/libbfd/Makefile.i386 Thu Sep 24 23:15:24 2015(r288199) @@ -17,3 +17,5 @@ VECS= ${DEFAULT_VECTOR} \ peigen.c: peXXigen.c sed -e s/XX/pe/g ${.ALLSRC} > ${.TARGET} + +CLEANFILES+= peigen.c Modified: head/kerberos5/libexec/kdigest/Makefile == --- head/kerberos5/libexec/kdigest/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/libexec/kdigest/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -10,6 +10,8 @@ SRCS= kdigest.c \ kdigest-commands.c \ kdigest-commands.h +CLEANFILES=kdigest-commands.h kdigest-commands.c + kdigest-commands.h: kdigest-commands.in ${SLC} ${.ALLSRC:M*.in} Modified: head/kerberos5/usr.bin/hxtool/Makefile == --- head/kerberos5/usr.bin/hxtool/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.bin/hxtool/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -9,6 +9,8 @@ CFLAGS+=-I${KRB5DIR}/lib/hx509 \ LIBADD=hx509 roken asn1 crypto sl vers edit SRCS= hxtool.c hxtool-commands.c hxtool-commands.h +CLEANFILES=hxtool-commands.h hxtool-commands.c + hxtool-commands.h: hxtool-commands.in ${SLC} ${.ALLSRC:M*.in} Modified: head/kerberos5/usr.bin/kadmin/Makefile == --- head/kerberos5/usr.bin/kadmin/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.bin/kadmin/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -31,6 +31,8 @@ DPADD=${LDAPDPADD} LDADD= ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} +CLEANFILES=kadmin-commands.h kadmin-commands.c + .include kadmin-commands.h: ${KRB5DIR}/kadmin/kadmin-commands.in Modified: head/kerberos5/usr.bin/kcc/Makefile == --- head/kerberos5/usr.bin/kcc/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.bin/kcc/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -16,6 +16,8 @@ SRCS= kcc.c \ kswitch.c \ copy_cred_cache.c +CLEANFILES=kcc-commands.h kcc-commands.c + kcc-commands.h: kcc-commands.in ${SLC} ${.ALLSRC:M*.in} Modified: head/kerberos5/usr.sbin/iprop-log/Makefile == --- head/kerberos5/usr.sbin/iprop-log/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.sbin/iprop-log/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -11,6 +11,8 @@ CFLAGS+= -I${KRB5DIR}/lib/kadm5 \ LIBADD=kadm5srv hdb krb5 roken edit sl vers LDFLAGS=${LDAPLDFLAGS} +CLEANFILES=iprop-commands.h iprop-commands.c + iprop-commands.h: iprop-commands.in ${SLC} ${.ALLSRC:M*.in} Modified: head/kerberos5/usr.sbin/ktutil/Makefile == --- head/kerberos5/usr.sbin/ktutil/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.sbin/ktutil/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -19,6 +19,8 @@ SRCS= add.c \ CFLAGS+=-I${KRB5DIR}/lib/roken -I${KRB5DIR}/lib/sl -I. LIBADD=kadm5clnt krb5 roken crypto edit sl vers +CLEANFILES=ktutil-commands.h ktutil-commands.c + .include ktutil-commands.h: ${KRB5DIR}/admin/ktutil-commands.in Modified: head/lib/clang/include/Makefile == --- head/lib/clang/include/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/lib/clang/include/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -54,7 +54,7 @@ INCS= __stddef_max_align_t.h \ xopintrin.h \ ${GENINCS} GENINCS= arm_neon.h -CLEANFILES= ${GENINCS} +CLEANFILES= ${GENINCS} ${GENINCS:C/\.h$/.d/} # avoid a circular dependency GENDIRDEPS_FILTER+= Nusr.
svn commit: r288198 - head/kerberos5/usr.sbin/ktutil
Author: bdrewery Date: Thu Sep 24 23:08:33 2015 New Revision: 288198 URL: https://svnweb.freebsd.org/changeset/base/288198 Log: Remove unneeded dependency line. bsd.prog.mk adds 'ktutil-commands.o: ktutil-commands.h' already. MFC after:2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/kerberos5/usr.sbin/ktutil/Makefile Modified: head/kerberos5/usr.sbin/ktutil/Makefile == --- head/kerberos5/usr.sbin/ktutil/Makefile Thu Sep 24 21:48:04 2015 (r288197) +++ head/kerberos5/usr.sbin/ktutil/Makefile Thu Sep 24 23:08:33 2015 (r288198) @@ -24,8 +24,6 @@ LIBADD= kadm5clnt krb5 roken crypto edit ktutil-commands.h: ${KRB5DIR}/admin/ktutil-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -ktutil-commands.${ext}: ktutil-commands.h -.endfor +ktutil-commands.c: ktutil-commands.h .PATH: ${KRB5DIR}/admin ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
Re: svn commit: r287263 - head/sys/conf
On 9/24/2015 2:23 PM, Warner Losh wrote: > I don't think so. I'd like to fix this more properly. However, without this > hack, anything in the tree that ends in _if.c or _if.h will get deleted, > which is bad as you might imagine. There's two or three drivers that > are built as modules that fit this pattern. > > I really don't want to back out r258068. Having a list of all the places > to look for _if.m files is really annoying... > I'm really just reminding you. I have no strong opinion on this, just that it appears to be new and unfinished. -- Regards, Bryan Drewery signature.asc Description: OpenPGP digital signature
Re: svn commit: r287263 - head/sys/conf
I don't think so. I'd like to fix this more properly. However, without this hack, anything in the tree that ends in _if.c or _if.h will get deleted, which is bad as you might imagine. There's two or three drivers that are built as modules that fit this pattern. I really don't want to back out r258068. Having a list of all the places to look for _if.m files is really annoying... Warner On Thu, Sep 24, 2015 at 12:56 PM, Bryan Drewery wrote: > On 8/28/2015 9:29 AM, Warner Losh wrote: > > Author: imp > > Date: Fri Aug 28 16:29:38 2015 > > New Revision: 287263 > > URL: https://svnweb.freebsd.org/changeset/base/287263 > > > > Log: > > Comment out cleaning files, since it cleans too much. > > > > Modified: > > head/sys/conf/kmod.mk > > > > Modified: head/sys/conf/kmod.mk > > > == > > --- head/sys/conf/kmod.mk Fri Aug 28 16:23:03 2015(r287262) > > +++ head/sys/conf/kmod.mk Fri Aug 28 16:29:38 2015(r287263) > > @@ -361,7 +361,8 @@ _MPATH=${__MPATH:H:O:u} > > .endif > > .PATH.m: ${_MPATH} > > .for _i in ${SRCS:M*_if.[ch]} > > -CLEANFILES+= ${_i} > > +#removes too much, comment out until it's more constrained. > > +#CLEANFILES+=${_i} > > .endfor # _i > > .m.c:${SYSDIR}/tools/makeobjops.awk > > ${AWK} -f ${SYSDIR}/tools/makeobjops.awk ${.IMPSRC} -c > > > > Rather than this should r285068 be reverted to restore CLEANFILES > handling of these generated files? > > -- > Regards, > Bryan Drewery > > ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
Re: svn commit: r287934 - head/sys/boot/efi/loader
That's the idea... When we load an 802.11 driver we'd need to then load the other associated modules. The key is, which ones and how do the special needs crowd do things other than the default. Warner On Thu, Sep 24, 2015 at 8:29 AM, Adrian Chadd wrote: > ... I'm confused about the "load it by hand" stuff in net80211. Why > don't we just do the kldload at that point? > > > -a > > > On 23 September 2015 at 21:06, Warner Losh wrote: > > You're right about the Wifi drivers. There's some number you'll want > loaded > > and we should have sensible defaults. But how to get there from here may > > be a bit interesting... Though if I go with the devd.conf writer early > in > > boot, > > I can make them be rc.conf variable controlled. > > > > Warner > > > > On Wed, Sep 23, 2015 at 8:13 PM, Rui Paulo wrote: > >> > >> Those were the issues that I encountered when I started using MINIMAL. > >> I didn't do a thorough investigation. > >> > >> Auto loading is a much bigger problem that just loading drivers for > >> PCI/USB/etc devices. For example, net80211 doesn't auto load the wlan > >> crypto modules by default nor the amrr module. > >> > >> On Mon, 2015-09-21 at 17:59 -0600, Warner Losh wrote: > >> > Apart from the inlining issue John raised (which I agree with his > >> > solution on, btw) > >> > and the one cam ctl module, what other modules are meaningfully > >> > different when > >> > compiled as modules. > >> > > >> > Assume that the auto-loading bit is solved, at least for devices on > >> > self-enumerating > >> > busses. > >> > > >> > Warner > >> > > >> > > >> > > On Sep 21, 2015, at 4:53 PM, Rui Paulo wrote: > >> > > > >> > > No, that doesn't work very well. Not only the modules don't auto > >> > > -load, the way the modules are compiled is different. See, for > >> > > example, cam ctl which doesn't compile the sg code when it's built > >> > > into the kernel, but compiles it when it's built as a module. The > >> > > sg code is currently buggy and causes insta-panics with GNOME 3 > >> > > (perhaps the auto-mounter in hald (?)). > >> > > -- > >> > > Rui Paulo > >> > > > >> > > > >> > > On Sep 21, 2015, at 11:24 AM, Adrian Chadd > >> > > wrote: > >> > > > >> > > > Hi, > >> > > > > >> > > > Warner has been working on the modular kernel thing. But > >> > > > honestly, I > >> > > > think we should just start biting that bullet and ship a modules > >> > > > -only > >> > > > GENERIC by default.. > >> > > > > >> > > > > >> > > > -a > >> > > > > >> > > > > >> > > > On 21 September 2015 at 11:02, Rui Paulo wrote: > >> > > > > So, we're going to keep ignoring the problem and keep patching > >> > > > > things up? > >> > > > > It's a bit sad that a single driver (pmspcv) is able to cause > >> > > > > so much > >> > > > > problems. > >> > > > > > >> > > > > -- > >> > > > > Rui Paulo > >> > > > > > >> > > > > > >> > > > > On Sep 17, 2015, at 01:36 PM, John Baldwin > >> > > > > wrote: > >> > > > > > >> > > > > Author: jhb > >> > > > > Date: Thu Sep 17 20:36:46 2015 > >> > > > > New Revision: 287934 > >> > > > > URL: https://svnweb.freebsd.org/changeset/base/287934 > >> > > > > > >> > > > > > >> > > > > Log: > >> > > > > The EFI boot loader allocates a single chunk of contiguous > >> > > > > memory to > >> > > > > hold the kernel, modules, and any other loaded data. This > >> > > > > memory block > >> > > > > is relocated to the kernel's expected location during the > >> > > > > transfer of > >> > > > > control from the loader to the kernel. > >> > > > > > >> > > > > The GENERIC kernel on amd64 has recently grown such that a > >> > > > > kernel + zfs.ko > >> > > > > no longer fits in the default staging size. Bump the default > >> > > > > size from > >> > > > > 32MB to 48MB to provide more breathing room. > >> > > > > > >> > > > > PR: 201679 > >> > > > > Reviewed by: imp > >> > > > > MFC after: 1 week > >> > > > > Differential Revision: https://reviews.freebsd.org/D3666 > >> > > > > > >> > > > > > >> > > > > Modified: > >> > > > > head/sys/boot/efi/loader/copy.c > >> > > > > > >> > > > > Modified: head/sys/boot/efi/loader/copy.c > >> > > > > === > >> > > > > === > >> > > > > --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 > >> > > > > (r287933) > >> > > > > +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 > >> > > > > (r287934) > >> > > > > @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); > >> > > > > #include > >> > > > > > >> > > > > #ifndef EFI_STAGING_SIZE > >> > > > > -#define EFI_STAGING_SIZE 32 > >> > > > > +#define EFI_STAGING_SIZE 48 > >> > > > > #endif > >> > > > > > >> > > > > #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) > >> > > > > > >> > > >> > >> -- > >> Rui Paulo > >> > > > ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288194 - in head: contrib/elftoolchain/elfdump contrib/elftoolchain/readelf usr.bin/elfdump
Author: emaste Date: Thu Sep 24 21:04:48 2015 New Revision: 288194 URL: https://svnweb.freebsd.org/changeset/base/288194 Log: Rename ELFOSABI_SYSV to ELFOSABI_NONE to match current spec Source: http://www.sco.com/developers/gabi/latest/ch4.eheader.html Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision:https://reviews.freebsd.org/D3731 Modified: head/contrib/elftoolchain/elfdump/elfdump.c head/contrib/elftoolchain/readelf/readelf.c head/usr.bin/elfdump/elfdump.c Modified: head/contrib/elftoolchain/elfdump/elfdump.c == --- head/contrib/elftoolchain/elfdump/elfdump.c Thu Sep 24 21:01:34 2015 (r288193) +++ head/contrib/elftoolchain/elfdump/elfdump.c Thu Sep 24 21:04:48 2015 (r288194) @@ -272,7 +272,7 @@ static const char *ei_data[] = { }; static const char *ei_abis[] = { - "ELFOSABI_SYSV", "ELFOSABI_HPUX", "ELFOSABI_NETBSD", "ELFOSABI_LINUX", + "ELFOSABI_NONE", "ELFOSABI_HPUX", "ELFOSABI_NETBSD", "ELFOSABI_LINUX", "ELFOSABI_HURD", "ELFOSABI_86OPEN", "ELFOSABI_SOLARIS", "ELFOSABI_MONTEREY", "ELFOSABI_IRIX", "ELFOSABI_FREEBSD", "ELFOSABI_TRU64", "ELFOSABI_MODESTO", "ELFOSABI_OPENBSD" Modified: head/contrib/elftoolchain/readelf/readelf.c == --- head/contrib/elftoolchain/readelf/readelf.c Thu Sep 24 21:01:34 2015 (r288193) +++ head/contrib/elftoolchain/readelf/readelf.c Thu Sep 24 21:04:48 2015 (r288194) @@ -414,7 +414,7 @@ elf_osabi(unsigned int abi) static char s_abi[32]; switch(abi) { - case ELFOSABI_SYSV: return "SYSV"; + case ELFOSABI_NONE: return "NONE"; case ELFOSABI_HPUX: return "HPUX"; case ELFOSABI_NETBSD: return "NetBSD"; case ELFOSABI_GNU: return "GNU"; Modified: head/usr.bin/elfdump/elfdump.c == --- head/usr.bin/elfdump/elfdump.c Thu Sep 24 21:01:34 2015 (r288193) +++ head/usr.bin/elfdump/elfdump.c Thu Sep 24 21:04:48 2015 (r288194) @@ -296,7 +296,7 @@ static const char *ei_data[] = { }; static const char *ei_abis[256] = { - "ELFOSABI_SYSV", "ELFOSABI_HPUX", "ELFOSABI_NETBSD", "ELFOSABI_LINUX", + "ELFOSABI_NONE", "ELFOSABI_HPUX", "ELFOSABI_NETBSD", "ELFOSABI_LINUX", "ELFOSABI_HURD", "ELFOSABI_86OPEN", "ELFOSABI_SOLARIS", "ELFOSABI_AIX", "ELFOSABI_IRIX", "ELFOSABI_FREEBSD", "ELFOSABI_TRU64", "ELFOSABI_MODESTO", "ELFOSABI_OPENBSD", ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288193 - stable/10/share/man/man7
Author: emaste Date: Thu Sep 24 21:01:34 2015 New Revision: 288193 URL: https://svnweb.freebsd.org/changeset/base/288193 Log: MFC r274349: Add /usr/lib/debug directory to hier(7) The canonical standalone debug directory established by the GNU toolchain is /usr/lib/debug, and we use it when WITH_DEBUG_FILES is set. Mention it in the file system hierarchy page. Modified: stable/10/share/man/man7/hier.7 Directory Properties: stable/10/ (props changed) Modified: stable/10/share/man/man7/hier.7 == --- stable/10/share/man/man7/hier.7 Thu Sep 24 20:56:26 2015 (r288192) +++ stable/10/share/man/man7/hier.7 Thu Sep 24 21:01:34 2015 (r288193) @@ -32,7 +32,7 @@ .\"@(#)hier.7 8.1 (Berkeley) 6/5/93 .\" $FreeBSD$ .\" -.Dd January 14, 2015 +.Dd September 24, 2015 .Dt HIER 7 .Os .Sh NAME @@ -391,6 +391,8 @@ shared libraries for compatibility .It Pa aout/ a.out backward compatibility libraries .El +.It Pa debug/ +standalone debug data for the base system libraries and binaries .It Pa dtrace/ DTrace library scripts .It Pa engines/ ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288192 - stable/10/etc
Author: emaste Date: Thu Sep 24 20:56:26 2015 New Revision: 288192 URL: https://svnweb.freebsd.org/changeset/base/288192 Log: MFC r279248: Unconditionally install debug directory hierarchy This avoids various failure modes (e.g., when building and installing a single binary with debug data on a system that otherwise does not have it enabled). It is also consistent with the way other directory hierarchies are handled (e.g. share/man). Modified: stable/10/etc/Makefile Directory Properties: stable/10/ (props changed) Modified: stable/10/etc/Makefile == --- stable/10/etc/Makefile Thu Sep 24 20:03:00 2015(r288191) +++ stable/10/etc/Makefile Thu Sep 24 20:56:26 2015(r288192) @@ -154,16 +154,13 @@ BIN1+= regdomain.xml # -rwxr-xr-x root:wheel, for the new cron root:wheel BIN2= netstart pccard_ether rc.suspend rc.resume -MTREE= BSD.include.dist BSD.root.dist BSD.usr.dist BSD.var.dist +MTREE= BSD.debug.dist BSD.include.dist BSD.root.dist BSD.usr.dist BSD.var.dist .if ${MK_TESTS} != "no" MTREE+=BSD.tests.dist .endif .if ${MK_SENDMAIL} != "no" MTREE+=BSD.sendmail.dist .endif -.if ${MK_DEBUG_FILES} != "no" -MTREE+=BSD.debug.dist -.endif PPPCNF=ppp.conf @@ -336,10 +333,8 @@ MTREE_CMD?=mtree MTREES=mtree/BSD.root.dist / \ mtree/BSD.var.dist /var\ mtree/BSD.usr.dist /usr\ - mtree/BSD.include.dist /usr/include -.if ${MK_DEBUG_FILES} != "no" -MTREES+= mtree/BSD.debug.dist/usr/lib -.endif + mtree/BSD.include.dist /usr/include\ + mtree/BSD.debug.dist/usr/lib .if ${MK_GROFF} != "no" MTREES+= mtree/BSD.groff.dist/usr .endif ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288191 - stable/10/sys/sys
Author: emaste Date: Thu Sep 24 20:03:00 2015 New Revision: 288191 URL: https://svnweb.freebsd.org/changeset/base/288191 Log: MFC r276636: add NT_PPC_VMX note type definition Modified: stable/10/sys/sys/elf_common.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/sys/elf_common.h == --- stable/10/sys/sys/elf_common.h Thu Sep 24 20:01:52 2015 (r288190) +++ stable/10/sys/sys/elf_common.h Thu Sep 24 20:03:00 2015 (r288191) @@ -518,6 +518,7 @@ typedef struct { #defineNT_PROCSTAT_OSREL 14 /* Procstat osreldate data. */ #defineNT_PROCSTAT_PSSTRINGS 15 /* Procstat ps_strings data. */ #defineNT_PROCSTAT_AUXV16 /* Procstat auxv data. */ +#defineNT_PPC_VMX 0x100 /* PowerPC Altivec/VMX registers */ #defineNT_X86_XSTATE 0x202 /* x86 XSAVE extended state. */ /* Symbol Binding - ELFNN_ST_BIND - st_info */ ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288190 - stable/10/sys/sys
Author: emaste Date: Thu Sep 24 20:01:52 2015 New Revision: 288190 URL: https://svnweb.freebsd.org/changeset/base/288190 Log: MFC r279698: Update the ELFOSABI_* constants. Two new operating systems have been added in the meantime. ELFOSABI_FENIXOS that uses value 16 (published in the latest draft) and ELFOSABI_CLOUDABI that uses value 17 (to be published in the next draft). Modified: stable/10/sys/sys/elf_common.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/sys/elf_common.h == --- stable/10/sys/sys/elf_common.h Thu Sep 24 20:00:20 2015 (r288189) +++ stable/10/sys/sys/elf_common.h Thu Sep 24 20:01:52 2015 (r288190) @@ -114,6 +114,8 @@ typedef struct { #defineELFOSABI_OPENVMS13 /* Open VMS */ #defineELFOSABI_NSK14 /* HP Non-Stop Kernel */ #defineELFOSABI_AROS 15 /* Amiga Research OS */ +#defineELFOSABI_FENIXOS16 /* FenixOS */ +#defineELFOSABI_CLOUDABI 17 /* Nuxi CloudABI */ #defineELFOSABI_ARM97 /* ARM */ #defineELFOSABI_STANDALONE 255 /* Standalone (embedded) application */ ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288189 - stable/10/sys/sys
Author: emaste Date: Thu Sep 24 20:00:20 2015 New Revision: 288189 URL: https://svnweb.freebsd.org/changeset/base/288189 Log: MFC r280858: Fill out arm64 dynamic relocation #defines Modified: stable/10/sys/sys/elf_common.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/sys/elf_common.h == --- stable/10/sys/sys/elf_common.h Thu Sep 24 19:59:32 2015 (r288188) +++ stable/10/sys/sys/elf_common.h Thu Sep 24 20:00:20 2015 (r288189) @@ -660,7 +660,11 @@ typedef struct { #defineR_AARCH64_GLOB_DAT 1025/* Set GOT entry to data address */ #defineR_AARCH64_JUMP_SLOT 1026/* Set GOT entry to code address */ #defineR_AARCH64_RELATIVE 1027/* Add load address of shared object */ +#defineR_AARCH64_TLS_DTPREL64 1028 +#defineR_AARCH64_TLS_DTPMOD64 1029 +#defineR_AARCH64_TLS_TPREL64 1030 #defineR_AARCH64_TLSDESC 1031/* Identify the TLS descriptor */ +#defineR_AARCH64_IRELATIVE 1032 #defineR_ARM_NONE 0 /* No relocation. */ #defineR_ARM_PC24 1 ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288188 - stable/10/sys/sys
Author: emaste Date: Thu Sep 24 19:59:32 2015 New Revision: 288188 URL: https://svnweb.freebsd.org/changeset/base/288188 Log: MFC r281308: Add R_AARCH64_NONE, the null relocation. Modified: stable/10/sys/sys/elf_common.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/sys/elf_common.h == --- stable/10/sys/sys/elf_common.h Thu Sep 24 19:53:24 2015 (r288187) +++ stable/10/sys/sys/elf_common.h Thu Sep 24 19:59:32 2015 (r288188) @@ -649,6 +649,7 @@ typedef struct { #defineR_386_TLS_TPOFF32 37 /* GOT entry of -ve static TLS offset */ #defineR_386_IRELATIVE 42 /* PLT entry resolved indirectly at runtime */ +#defineR_AARCH64_NONE 0 /* No relocation */ #defineR_AARCH64_ABS64 257 /* Absolute offset */ #defineR_AARCH64_ABS32 258 /* Absolute, 32-bit overflow check */ #defineR_AARCH64_ABS16 259 /* Absolute, 16-bit overflow check */ ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
Re: svn commit: r287263 - head/sys/conf
On 8/28/2015 9:29 AM, Warner Losh wrote: > Author: imp > Date: Fri Aug 28 16:29:38 2015 > New Revision: 287263 > URL: https://svnweb.freebsd.org/changeset/base/287263 > > Log: > Comment out cleaning files, since it cleans too much. > > Modified: > head/sys/conf/kmod.mk > > Modified: head/sys/conf/kmod.mk > == > --- head/sys/conf/kmod.mk Fri Aug 28 16:23:03 2015(r287262) > +++ head/sys/conf/kmod.mk Fri Aug 28 16:29:38 2015(r287263) > @@ -361,7 +361,8 @@ _MPATH=${__MPATH:H:O:u} > .endif > .PATH.m: ${_MPATH} > .for _i in ${SRCS:M*_if.[ch]} > -CLEANFILES+= ${_i} > +#removes too much, comment out until it's more constrained. > +#CLEANFILES+=${_i} > .endfor # _i > .m.c:${SYSDIR}/tools/makeobjops.awk > ${AWK} -f ${SYSDIR}/tools/makeobjops.awk ${.IMPSRC} -c > Rather than this should r285068 be reverted to restore CLEANFILES handling of these generated files? -- Regards, Bryan Drewery signature.asc Description: OpenPGP digital signature
svn commit: r288187 - stable/10/sys/sys
Author: emaste Date: Thu Sep 24 19:53:24 2015 New Revision: 288187 URL: https://svnweb.freebsd.org/changeset/base/288187 Log: MFC r275903: Add AArch64 64-bit relocation values. Modified: stable/10/sys/sys/elf_common.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/sys/elf_common.h == --- stable/10/sys/sys/elf_common.h Thu Sep 24 19:42:32 2015 (r288186) +++ stable/10/sys/sys/elf_common.h Thu Sep 24 19:53:24 2015 (r288187) @@ -649,6 +649,18 @@ typedef struct { #defineR_386_TLS_TPOFF32 37 /* GOT entry of -ve static TLS offset */ #defineR_386_IRELATIVE 42 /* PLT entry resolved indirectly at runtime */ +#defineR_AARCH64_ABS64 257 /* Absolute offset */ +#defineR_AARCH64_ABS32 258 /* Absolute, 32-bit overflow check */ +#defineR_AARCH64_ABS16 259 /* Absolute, 16-bit overflow check */ +#defineR_AARCH64_PREL64260 /* PC relative */ +#defineR_AARCH64_PREL32261 /* PC relative, 32-bit overflow check */ +#defineR_AARCH64_PREL16262 /* PC relative, 16-bit overflow check */ +#defineR_AARCH64_COPY 1024/* Copy data from shared object */ +#defineR_AARCH64_GLOB_DAT 1025/* Set GOT entry to data address */ +#defineR_AARCH64_JUMP_SLOT 1026/* Set GOT entry to code address */ +#defineR_AARCH64_RELATIVE 1027/* Add load address of shared object */ +#defineR_AARCH64_TLSDESC 1031/* Identify the TLS descriptor */ + #defineR_ARM_NONE 0 /* No relocation. */ #defineR_ARM_PC24 1 #defineR_ARM_ABS32 2 ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288186 - stable/9/games/grdc
Author: emaste Date: Thu Sep 24 19:42:32 2015 New Revision: 288186 URL: https://svnweb.freebsd.org/changeset/base/288186 Log: MFC r283929: Correct grdc(1) 12-hour display between 12:00 and 13:00 PM starts at 12:00, not 13:00. PR: 194291, 200133 Submitted by: Nick Price Modified: stable/9/games/grdc/grdc.c Directory Properties: stable/9/games/grdc/ (props changed) Modified: stable/9/games/grdc/grdc.c == --- stable/9/games/grdc/grdc.c Thu Sep 24 19:37:34 2015(r288185) +++ stable/9/games/grdc/grdc.c Thu Sep 24 19:42:32 2015(r288186) @@ -150,14 +150,14 @@ main(int argc, char *argv[]) set(tm->tm_min/10, 14); if (t12) { - if (tm->tm_hour > 12) { - tm->tm_hour -= 12; - mvaddstr(YBASE + 5, XBASE + 52, "PM"); - } else { + if (tm->tm_hour < 12) { if (tm->tm_hour == 0) tm->tm_hour = 12; - mvaddstr(YBASE + 5, XBASE + 52, "AM"); + } else { + if (tm->tm_hour > 12) + tm->tm_hour -= 12; + mvaddstr(YBASE + 5, XBASE + 52, "PM"); } } ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288185 - stable/10/games/grdc
Author: emaste Date: Thu Sep 24 19:37:34 2015 New Revision: 288185 URL: https://svnweb.freebsd.org/changeset/base/288185 Log: MFC r283929: Correct grdc(1) 12-hour display between 12:00 and 13:00 PM starts at 12:00, not 13:00. PR: 194291, 200133 Submitted by: Nick Price Modified: stable/10/games/grdc/grdc.c Directory Properties: stable/10/ (props changed) Modified: stable/10/games/grdc/grdc.c == --- stable/10/games/grdc/grdc.c Thu Sep 24 19:33:35 2015(r288184) +++ stable/10/games/grdc/grdc.c Thu Sep 24 19:37:34 2015(r288185) @@ -150,14 +150,14 @@ main(int argc, char *argv[]) set(tm->tm_min/10, 14); if (t12) { - if (tm->tm_hour > 12) { - tm->tm_hour -= 12; - mvaddstr(YBASE + 5, XBASE + 52, "PM"); - } else { + if (tm->tm_hour < 12) { if (tm->tm_hour == 0) tm->tm_hour = 12; - mvaddstr(YBASE + 5, XBASE + 52, "AM"); + } else { + if (tm->tm_hour > 12) + tm->tm_hour -= 12; + mvaddstr(YBASE + 5, XBASE + 52, "PM"); } } ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288184 - stable/10/contrib/binutils/gas
Author: emaste Date: Thu Sep 24 19:33:35 2015 New Revision: 288184 URL: https://svnweb.freebsd.org/changeset/base/288184 Log: MFC r256692: Fix .debug_line prologue header length calculation for 64-bit DWARF The header_length field is the number of bytes following the field to the first byte of the line number program. The hard-coded constants previously here (4 + 2 + 4) were correct only for 32-bit DWARF. Sponsored by: DARPA, AFRL Modified: stable/10/contrib/binutils/gas/dwarf2dbg.c Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/binutils/gas/dwarf2dbg.c == --- stable/10/contrib/binutils/gas/dwarf2dbg.c Thu Sep 24 19:32:08 2015 (r288183) +++ stable/10/contrib/binutils/gas/dwarf2dbg.c Thu Sep 24 19:33:35 2015 (r288184) @@ -1271,6 +1271,7 @@ out_debug_line (segT line_seg) symbolS *line_end; struct line_seg *s; enum dwarf2_format d2f; + int sizeof_initial_length; int sizeof_offset; subseg_set (line_seg, 0); @@ -1287,27 +1288,24 @@ out_debug_line (segT line_seg) d2f = DWARF2_FORMAT (); if (d2f == dwarf2_format_32bit) { - expr.X_add_number = -4; - emit_expr (&expr, 4); - sizeof_offset = 4; + sizeof_initial_length = sizeof_offset = 4; } else if (d2f == dwarf2_format_64bit) { - expr.X_add_number = -12; - out_four (-1); - emit_expr (&expr, 8); + sizeof_initial_length = 12; sizeof_offset = 8; + out_four (-1); } else if (d2f == dwarf2_format_64bit_irix) { - expr.X_add_number = -8; - emit_expr (&expr, 8); - sizeof_offset = 8; + sizeof_initial_length = sizeof_offset = 8; } else { as_fatal (_("internal error: unknown dwarf2 format")); } + expr.X_add_number = -sizeof_initial_length; + emit_expr (&expr, sizeof_offset); /* Version. */ out_two (2); @@ -1316,7 +1314,7 @@ out_debug_line (segT line_seg) expr.X_op = O_subtract; expr.X_add_symbol = prologue_end; expr.X_op_symbol = line_start; - expr.X_add_number = - (4 + 2 + 4); + expr.X_add_number = - (sizeof_initial_length + 2 + sizeof_offset); emit_expr (&expr, sizeof_offset); /* Parameters of the state machine. */ ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288183 - stable/10/sys/kern
Author: emaste Date: Thu Sep 24 19:32:08 2015 New Revision: 288183 URL: https://svnweb.freebsd.org/changeset/base/288183 Log: MFC r256643: makesyscalls.sh: Error on failure to open specified config file Modified: stable/10/sys/kern/makesyscalls.sh Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/kern/makesyscalls.sh == --- stable/10/sys/kern/makesyscalls.sh Thu Sep 24 19:28:53 2015 (r288182) +++ stable/10/sys/kern/makesyscalls.sh Thu Sep 24 19:32:08 2015 (r288183) @@ -57,7 +57,7 @@ case $# in ;; esac -if [ -n "$2" -a -f "$2" ]; then +if [ -n "$2" ]; then . $2 fi ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288182 - stable/10/contrib/libcxxrt
Author: emaste Date: Thu Sep 24 19:28:53 2015 New Revision: 288182 URL: https://svnweb.freebsd.org/changeset/base/288182 Log: MFC r284551: Import libcxxrt master e64e93f. This includes a number of demangler fixes obtained from upstream ELF Tool Chain. PR: 200913 Sponsored by: The FreeBSD Foundation Modified: stable/10/contrib/libcxxrt/libelftc_dem_gnu3.c Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/libcxxrt/libelftc_dem_gnu3.c == --- stable/10/contrib/libcxxrt/libelftc_dem_gnu3.c Thu Sep 24 18:53:20 2015(r288181) +++ stable/10/contrib/libcxxrt/libelftc_dem_gnu3.c Thu Sep 24 19:28:53 2015(r288182) @@ -59,7 +59,7 @@ struct vector_str { enum type_qualifier { TYPE_PTR, TYPE_REF, TYPE_CMX, TYPE_IMG, TYPE_EXT, TYPE_RST, TYPE_VAT, - TYPE_CST + TYPE_CST, TYPE_VEC }; struct vector_type_qualifier { @@ -397,6 +397,8 @@ static int cpp_demangle_read_array(struc static int cpp_demangle_read_encoding(struct cpp_demangle_data *); static int cpp_demangle_read_expr_primary(struct cpp_demangle_data *); static int cpp_demangle_read_expression(struct cpp_demangle_data *); +static int cpp_demangle_read_expression_flat(struct cpp_demangle_data *, + char **); static int cpp_demangle_read_expression_binary(struct cpp_demangle_data *, const char *, size_t); static int cpp_demangle_read_expression_unary(struct cpp_demangle_data *, @@ -408,8 +410,12 @@ static int cpp_demangle_read_function(st static int cpp_demangle_local_source_name(struct cpp_demangle_data *ddata); static int cpp_demangle_read_local_name(struct cpp_demangle_data *); static int cpp_demangle_read_name(struct cpp_demangle_data *); +static int cpp_demangle_read_name_flat(struct cpp_demangle_data *, + char**); static int cpp_demangle_read_nested_name(struct cpp_demangle_data *); static int cpp_demangle_read_number(struct cpp_demangle_data *, long *); +static int cpp_demangle_read_number_as_string(struct cpp_demangle_data *, + char **); static int cpp_demangle_read_nv_offset(struct cpp_demangle_data *); static int cpp_demangle_read_offset(struct cpp_demangle_data *); static int cpp_demangle_read_offset_number(struct cpp_demangle_data *); @@ -423,6 +429,8 @@ static int cpp_demangle_read_tmpl_arg(st static int cpp_demangle_read_tmpl_args(struct cpp_demangle_data *); static int cpp_demangle_read_tmpl_param(struct cpp_demangle_data *); static int cpp_demangle_read_type(struct cpp_demangle_data *, int); +static int cpp_demangle_read_type_flat(struct cpp_demangle_data *, + char **); static int cpp_demangle_read_uqname(struct cpp_demangle_data *); static int cpp_demangle_read_v_offset(struct cpp_demangle_data *); static char*decode_fp_to_double(const char *, size_t); @@ -601,17 +609,18 @@ cpp_demangle_push_fp(struct cpp_demangle fp = ddata->cur; while (*ddata->cur != 'E') ++ddata->cur; - ++ddata->cur; if ((f = decoder(fp, ddata->cur - fp)) == NULL) return (0); rtn = 0; if ((len = strlen(f)) > 0) - rtn = cpp_demangle_push_str(ddata, f, len); + rtn = cpp_demangle_push_str(ddata, f, len); free(f); + ++ddata->cur; + return (rtn); } @@ -695,7 +704,8 @@ cpp_demangle_push_type_qualifier(struct if (type_str != NULL) { if (!vector_str_push(&subst_v, "*", 1)) goto clean; - if (!cpp_demangle_push_subst_v(ddata, &subst_v)) + if (!cpp_demangle_push_subst_v(ddata, + &subst_v)) goto clean; } break; @@ -706,7 +716,8 @@ cpp_demangle_push_type_qualifier(struct if (type_str != NULL) { if (!vector_str_push(&subst_v, "&", 1)) goto clean; - if (!cpp_demangle_push_subst_v(ddata, &subst_v)) + if (!cpp_demangle_push_subst_v(ddata, + &subst_v)) goto clean; } break; @@ -717,7 +728,8 @@ cpp_demangle_push_type_qualifier(struct if (type_str != NULL) { if (!vector_str_push(&subst_v, " complex", 8)) goto clean; - if (!cpp_demangle_push_subst_v(ddata, &subst_v)) + if (!cpp_dem
svn commit: r288181 - head/contrib/elftoolchain/readelf
Author: emaste Date: Thu Sep 24 18:53:20 2015 New Revision: 288181 URL: https://svnweb.freebsd.org/changeset/base/288181 Log: readelf: Correct typo HPUS -> HPUX Submitted by: kib Modified: head/contrib/elftoolchain/readelf/readelf.c Modified: head/contrib/elftoolchain/readelf/readelf.c == --- head/contrib/elftoolchain/readelf/readelf.c Thu Sep 24 17:37:30 2015 (r288180) +++ head/contrib/elftoolchain/readelf/readelf.c Thu Sep 24 18:53:20 2015 (r288181) @@ -415,7 +415,7 @@ elf_osabi(unsigned int abi) switch(abi) { case ELFOSABI_SYSV: return "SYSV"; - case ELFOSABI_HPUX: return "HPUS"; + case ELFOSABI_HPUX: return "HPUX"; case ELFOSABI_NETBSD: return "NetBSD"; case ELFOSABI_GNU: return "GNU"; case ELFOSABI_HURD: return "HURD"; ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
Re: svn commit: r287886 - head/sys/sys
On Thu, Sep 24, 2015 at 02:57:57PM +0100, Steven Hartland wrote: > On 17/09/2015 14:07, Alexey Dokuchaev wrote: > > On Thu, Sep 17, 2015 at 12:58:59PM +0100, Steven Hartland wrote: > > > 8 isn't supported any more but the patch should apply to stable/8 > > > sources if you maintain your own branch of it. > > > > So the answer is "no". It's OK, I'll ask for your approval and MFC > > it myself in due time (provided there won't be any regressions > > found). > > This is all done now Alexey, did stable/8 while I was there and EN > request has been sent too. Thanks Steven, I appreciate it! ./danfe ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288180 - in head: share/man/man4 sys/dev/usb/quirk
Author: hselasky Date: Thu Sep 24 17:37:30 2015 New Revision: 288180 URL: https://svnweb.freebsd.org/changeset/base/288180 Log: Implement support for reading USB quirks from the kernel environment. Refer to the usb_quirk(4) manual page for more details on how to use this new feature. Submitted by: Maxime Soule PR: 203249 MFC after:2 weeks Modified: head/share/man/man4/usb_quirk.4 head/sys/dev/usb/quirk/usb_quirk.c Modified: head/share/man/man4/usb_quirk.4 == --- head/share/man/man4/usb_quirk.4 Thu Sep 24 17:36:18 2015 (r288179) +++ head/share/man/man4/usb_quirk.4 Thu Sep 24 17:37:30 2015 (r288180) @@ -16,7 +16,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 7, 2015 +.Dd September 24, 2015 .Dt USB_QUIRK 4 .Os .Sh NAME @@ -177,7 +177,53 @@ ejects after HID command .Pp See .Pa /sys/dev/usb/quirk/usb_quirk.h -for the complete list of supported quirks. +or run "usbconfig dump_quirk_names" for the complete list of supported quirks. +.Sh LOADER TUNABLE +The following tunable can be set at the +.Xr loader 8 +prompt before booting the kernel, or stored in +.Xr loader.conf 5 . +.Bl -tag -width indent +.It Va hw.usb.quirk.%d +The value is a string whose format is: +.Bd -literal -offset indent +.Qo VendorId ProductId LowRevision HighRevision UQ_QUIRK,... Qc +.Ed +.Pp +Installs the quirks +.Ic UQ_QUIRK,... +for all USB devices matching +.Ic VendorId , +.Ic ProductId +and has a hardware revision between and including +.Ic LowRevision +and +.Ic HighRevision . +.Pp +.Ic VendorId , +.Ic ProductId , +.Ic LowRevision +and +.Ic HighRevision +are all 16 bits numbers which can be decimal or hexadecimal based. +.Pp +A maximum of 100 variables +.Ic hw.usb.quirk.0, .1, ..., .99 +can be defined. +.Pp +If a matching entry is found in the kernel's internal quirks table, it +is replaced by the new definition. +.Pp +Else a new entry is created given that the quirk table is not full. +.Pp +The kernel iterates over the +.Ic hw.usb.quirk.N +variables starting at +.Ic N = 0 +and stops at +.Ic N = 99 +or the first non-existing one. +.El .Sh EXAMPLES After attaching a .Nm u3g @@ -186,6 +232,13 @@ device which appears as a USB device on .Bd -literal -offset indent usbconfig -d ugen0.3 add_quirk UQ_MSC_EJECT_WAIT .Ed +.Pp +To install a quirk at boot time, place one or several lines like the +following in +.Xr loader.conf 5 : +.Bd -literal -offset indent +hw.usb.quirk.0="0x04d9 0xfa50 0 0x UQ_KBD_IGNORE" +.Ed .Sh SEE ALSO .Xr usbconfig 8 .Sh HISTORY Modified: head/sys/dev/usb/quirk/usb_quirk.c == --- head/sys/dev/usb/quirk/usb_quirk.c Thu Sep 24 17:36:18 2015 (r288179) +++ head/sys/dev/usb/quirk/usb_quirk.c Thu Sep 24 17:37:30 2015 (r288180) @@ -61,6 +61,7 @@ MODULE_VERSION(usb_quirk, 1); #defineUSB_DEV_QUIRKS_MAX 384 #defineUSB_SUB_QUIRKS_MAX 8 +#defineUSB_QUIRK_ENVROOT "hw.usb.quirk." struct usb_quirk_entry { uint16_t vid; @@ -608,8 +609,32 @@ static const char *usb_quirk_str[USB_QUI static const char * usb_quirkstr(uint16_t quirk) { - return ((quirk < USB_QUIRK_MAX) ? - usb_quirk_str[quirk] : "USB_QUIRK_UNKNOWN"); + return ((quirk < USB_QUIRK_MAX && usb_quirk_str[quirk] != NULL) ? + usb_quirk_str[quirk] : "UQ_UNKNOWN"); +} + +/** + * usb_strquirk + * + * This function converts a string into a USB quirk code. + * + * Returns: + * Less than USB_QUIRK_MAX: Quirk code + * Else: Quirk code not found + **/ +static uint16_t +usb_strquirk(const char *str, size_t len) +{ + const char *quirk; + uint16_t x; + + for (x = 0; x != USB_QUIRK_MAX; x++) { + quirk = usb_quirkstr(x); + if (strncmp(str, quirk, len) == 0 && + quirk[len] == 0) + break; + } + return (x); } /** @@ -854,12 +879,122 @@ usb_quirk_ioctl(unsigned long cmd, caddr return (ENOIOCTL); } +/** + * usb_quirk_strtou16 + * + * Helper function to scan a 16-bit integer. + **/ +static uint16_t +usb_quirk_strtou16(const char **pptr, const char *name, const char *what) +{ + unsigned long value; + char *end; + + value = strtoul(*pptr, &end, 0); + if (value > 65535 || *pptr == end || (*end != ' ' && *end != '\t')) { + printf("%s: %s 16-bit %s value set to zero\n", + name, what, *end == 0 ? "incomplete" : "invalid"); + return (0); + } + *ppt
svn commit: r288179 - head/share/mk
Author: bdrewery Date: Thu Sep 24 17:36:18 2015 New Revision: 288179 URL: https://svnweb.freebsd.org/changeset/base/288179 Log: Fix running make in src directories without a Makefile giving confusing errors. This fixes the following errors: make: don't know how to make bsd.README. Stop make: don't know how to make auto.obj.mk. Stop This is easily seen in sys/dev/*. The new behavior is now the expected output: make: no target to make. This would happen as MAKESYSPATH (.../share/mk) is auto added to the -I list. Any directory where make is ran in the src tree that has no local Makefile would then try executing the target in share/mk/Makefile, which by default was to build the first entry in FILES. Of course, because bsd.README and auto.obj.mk are not in the current directory the error is shown. This check only works for bmake, but I will still MFC it with an extra '!defined(.PARSEDIR) ||' guard for stable/10. MFC after:2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/Makefile Modified: head/share/mk/Makefile == --- head/share/mk/Makefile Thu Sep 24 17:23:41 2015(r288178) +++ head/share/mk/Makefile Thu Sep 24 17:36:18 2015(r288179) @@ -1,6 +1,11 @@ # $FreeBSD$ # @(#)Makefile8.1 (Berkeley) 6/8/93 +# Only parse this if executing make in this directory, not in other places +# in src that lack a Makefile, such as sys/dev/*. Otherwise the MAKESYSPATH +# will read this Makefile since it auto includes it into -I. +.if ${.CURDIR} == ${.PARSEDIR} + .include FILES= \ @@ -63,3 +68,4 @@ FILES+= tap.test.mk .endif .include +.endif # CURDIR == PARSEDIR ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288178 - head/sys/dev/iwn
Author: adrian Date: Thu Sep 24 17:23:41 2015 New Revision: 288178 URL: https://svnweb.freebsd.org/changeset/base/288178 Log: Fix up error path handling after the recent churn. * Don't free the mbuf in the tx path - it uses the transmit path now, so the caller frees the mbuf. * Don't decrement the node ref upon error - that's up to the caller to do as well. Tested: * Intel 5300 3x3 wifi, station mode Noticed by: Modified: head/sys/dev/iwn/if_iwn.c Modified: head/sys/dev/iwn/if_iwn.c == --- head/sys/dev/iwn/if_iwn.c Thu Sep 24 16:56:44 2015(r288177) +++ head/sys/dev/iwn/if_iwn.c Thu Sep 24 17:23:41 2015(r288178) @@ -4368,7 +4368,6 @@ iwn_tx_data(struct iwn_softc *sc, struct struct ieee80211_tx_ampdu *tap = &ni->ni_tx_ampdu[ac]; if (!IEEE80211_AMPDU_RUNNING(tap)) { - m_freem(m); return EINVAL; } @@ -4420,7 +4419,6 @@ iwn_tx_data(struct iwn_softc *sc, struct /* Retrieve key for TX. */ k = ieee80211_crypto_encap(ni, m); if (k == NULL) { - m_freem(m); return ENOBUFS; } /* 802.11 header may have moved. */ @@ -4551,7 +4549,6 @@ iwn_tx_data(struct iwn_softc *sc, struct if (error != EFBIG) { device_printf(sc->sc_dev, "%s: can't map mbuf (error %d)\n", __func__, error); - m_freem(m); return error; } /* Too many DMA segments, linearize mbuf. */ @@ -4559,7 +4556,6 @@ iwn_tx_data(struct iwn_softc *sc, struct if (m1 == NULL) { device_printf(sc->sc_dev, "%s: could not defrag mbuf\n", __func__); - m_freem(m); return ENOBUFS; } m = m1; @@ -4569,7 +4565,6 @@ iwn_tx_data(struct iwn_softc *sc, struct if (error != 0) { device_printf(sc->sc_dev, "%s: can't map mbuf (error %d)\n", __func__, error); - m_freem(m); return error; } } @@ -4755,7 +4750,6 @@ iwn_tx_data_raw(struct iwn_softc *sc, st if (error != EFBIG) { device_printf(sc->sc_dev, "%s: can't map mbuf (error %d)\n", __func__, error); - m_freem(m); return error; } /* Too many DMA segments, linearize mbuf. */ @@ -4763,7 +4757,6 @@ iwn_tx_data_raw(struct iwn_softc *sc, st if (m1 == NULL) { device_printf(sc->sc_dev, "%s: could not defrag mbuf\n", __func__); - m_freem(m); return ENOBUFS; } m = m1; @@ -4773,7 +4766,6 @@ iwn_tx_data_raw(struct iwn_softc *sc, st if (error != 0) { device_printf(sc->sc_dev, "%s: can't map mbuf (error %d)\n", __func__, error); - m_freem(m); return error; } } @@ -4869,6 +4861,9 @@ iwn_xmit_task(void *arg0, int pending) IWN_UNLOCK(sc); } +/* + * raw frame xmit - free node/reference if failed. + */ static int iwn_raw_xmit(struct ieee80211_node *ni, struct mbuf *m, const struct ieee80211_bpf_params *params) @@ -4931,6 +4926,9 @@ iwn_raw_xmit(struct ieee80211_node *ni, return error; } +/* + * transmit - don't free mbuf if failed; don't free node ref if failed. + */ static int iwn_transmit(struct ieee80211com *ic, struct mbuf *m) { @@ -4938,6 +4936,8 @@ iwn_transmit(struct ieee80211com *ic, st struct ieee80211_node *ni; int error; + ni = (struct ieee80211_node *)m->m_pkthdr.rcvif; + IWN_LOCK(sc); if ((sc->sc_flags & IWN_FLAG_RUNNING) == 0 || sc->sc_beacon_wait) { IWN_UNLOCK(sc); @@ -4949,11 +4949,9 @@ iwn_transmit(struct ieee80211com *ic, st return (ENOBUFS); } - ni = (struct ieee80211_node *)m->m_pkthdr.rcvif; error = iwn_tx_data(sc, m, ni); if (error) { if_inc_counter(ni->ni_vap->iv_ifp, IFCOUNTER_OERRORS, 1); - ieee80211_free_node(ni); } else sc->sc_tx_timer = 5; IWN_UNLOCK(sc); ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288177 - head
Author: emaste Date: Thu Sep 24 16:56:44 2015 New Revision: 288177 URL: https://svnweb.freebsd.org/changeset/base/288177 Log: Correct UPDATING entry date Modified: head/UPDATING Modified: head/UPDATING == --- head/UPDATING Thu Sep 24 16:55:22 2015(r288176) +++ head/UPDATING Thu Sep 24 16:56:44 2015(r288177) @@ -31,7 +31,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) -20150925: +20150924: Kernel debug files have been moved to /usr/lib/debug/boot/kernel/, and renamed from .symbols to .debug. This reduces the size requirements on the boot partition or file system and provides consistency with ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288176 - in head: . etc/mtree share/man/man7 sys/conf
Author: emaste Date: Thu Sep 24 16:55:22 2015 New Revision: 288176 URL: https://svnweb.freebsd.org/changeset/base/288176 Log: Install kernel debug data under /usr/lib/debug This avoids needing a large boot partition / file system in order to accommodate multiple kernels, and provides consistency with userland debug. This also simplifies the process of moving kernel debug files to a separate package and installing them on demand. In addition, change kernel debug file extension to .debug, to match userland debug files. When using the supported kernel installation method the /usr/lib/debug/boot/kernel directory will be renamed (to kernel.old) as is done with /boot/kernel. Developers wishing to maintain the historical behavior of installing debug files in /boot/kernel/ can set KERN_DEBUGDIR="" in src.conf(5). Reviewed by: bdrewery, brooks, imp, markj Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision:https://reviews.freebsd.org/D1006 Modified: head/UPDATING head/etc/mtree/BSD.debug.dist head/share/man/man7/hier.7 head/sys/conf/kern.post.mk head/sys/conf/kmod.mk Modified: head/UPDATING == --- head/UPDATING Thu Sep 24 15:59:08 2015(r288175) +++ head/UPDATING Thu Sep 24 16:55:22 2015(r288176) @@ -31,6 +31,19 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20150925: + Kernel debug files have been moved to /usr/lib/debug/boot/kernel/, + and renamed from .symbols to .debug. This reduces the size requirements + on the boot partition or file system and provides consistency with + userland debug files. + + When using the supported kernel installation method the + /usr/lib/debug/boot/kernel directory will be renamed (to kernel.old) + as is done with /boot/kernel. + + Developers wishing to maintain the historical behavior of installing + debug files in /boot/kernel/ can set KERN_DEBUGDIR="" in src.conf(5). + 20150827: The wireless drivers had undergone changes that remove the 'parent interface' from the ifconfig -l output. The rc.d network scripts Modified: head/etc/mtree/BSD.debug.dist == --- head/etc/mtree/BSD.debug.dist Thu Sep 24 15:59:08 2015 (r288175) +++ head/etc/mtree/BSD.debug.dist Thu Sep 24 16:55:22 2015 (r288176) @@ -9,6 +9,8 @@ bin .. boot +kernel +.. .. lib geom Modified: head/share/man/man7/hier.7 == --- head/share/man/man7/hier.7 Thu Sep 24 15:59:08 2015(r288175) +++ head/share/man/man7/hier.7 Thu Sep 24 16:55:22 2015(r288176) @@ -383,7 +383,7 @@ shared libraries for compatibility a.out backward compatibility libraries .El .It Pa debug/ -standalone debug data for the base system libraries and binaries +standalone debug data for the kernel and base system libraries and binaries .It Pa dtrace/ DTrace library scripts .It Pa engines/ Modified: head/sys/conf/kern.post.mk == --- head/sys/conf/kern.post.mk Thu Sep 24 15:59:08 2015(r288175) +++ head/sys/conf/kern.post.mk Thu Sep 24 16:55:22 2015(r288176) @@ -23,6 +23,11 @@ MKMODULESENV+= CONF_CFLAGS="${CONF_CFLAG MKMODULESENV+= WITH_CTF="${WITH_CTF}" .endif +# Allow overriding the kernel debug directory, so kernel and user debug may be +# installed in different directories. Setting it to "" restores the historical +# behavior of installing debug files in the kernel directory. +KERN_DEBUGDIR?=${DEBUGDIR} + .MAIN: all .for target in all clean cleandepend cleandir clobber depend install \ @@ -101,11 +106,11 @@ modules-all modules-depend: modules-obj .if !defined(DEBUG) FULLKERNEL=${KERNEL_KO} .else -FULLKERNEL=${KERNEL_KO}.debug -${KERNEL_KO}: ${FULLKERNEL} ${KERNEL_KO}.symbols - ${OBJCOPY} --strip-debug --add-gnu-debuglink=${KERNEL_KO}.symbols\ +FULLKERNEL=${KERNEL_KO}.full +${KERNEL_KO}: ${FULLKERNEL} ${KERNEL_KO}.debug + ${OBJCOPY} --strip-debug --add-gnu-debuglink=${KERNEL_KO}.debug \ ${FULLKERNEL} ${.TARGET} -${KERNEL_KO}.symbols: ${FULLKERNEL} +${KERNEL_KO}.debug: ${FULLKERNEL} ${OBJCOPY} --only-keep-debug ${FULLKERNEL} ${.TARGET} install.debug reinstall.debug: gdbinit cd ${.CURDIR}; ${MAKE} ${.TARGET:R} @@ -151,7 +156,7 @@ ${mfile:T:S/.m$/.h/}: ${mfile} kernel-clean: rm -f *.o *.so *.So *.ko *.s eddep errs \ - ${FULLKERNEL} ${KERNEL_KO} ${KERNEL_KO}.symbols \ + ${FULLKERNEL} ${KERNEL_KO} ${KE
Re: svn commit: r287934 - head/sys/boot/efi/loader
> > The other approach I suggested earlier is to make the kernel relocatable > (and allow the module metadata to be anywhere and live in a chain instead > of an array) so that we can just load things wherever and leave them there > without having to relocate. For ia64 I linked the kernel against a virtual address. The loader could simply allocate EFI memory as needed, and not worry about its location. It would map that into what I called the “pre-boot virtual address space”. When booting the kernel, the loader only had to pass the physical address and size of the page table (the virtual address was fixed). With a variable size the loader would start off with a single 4KB page table and it would grow it as needed to some arbitrary max. The page size for the pre-boot virtual address space was 64KB (to match the maximum alignment of segments that the toolchain allowed). With more than 700MB of pre-boot virtual address space, one could preload and entire installation CD if willing to wait for it being loaded. No need to set memory aside and hope things fit... As a nice plus: linking against a virtual address allows copying the kernel text across the memory domains and always have it run locally to CPUs in NUMA configurations. -- Marcel Moolenaar mar...@xcllnt.net signature.asc Description: Message signed with OpenPGP using GPGMail
svn commit: r288175 - head/sys/cam/ctl
Author: mav Date: Thu Sep 24 15:59:08 2015 New Revision: 288175 URL: https://svnweb.freebsd.org/changeset/base/288175 Log: Allow WRITE SAME with NDOB bit set but without UNMAP. This combination was originally forbidden, but allowed at spc4r3. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_backend_block.c Modified: head/sys/cam/ctl/ctl.c == --- head/sys/cam/ctl/ctl.c Thu Sep 24 13:06:19 2015(r288174) +++ head/sys/cam/ctl/ctl.c Thu Sep 24 15:59:08 2015(r288175) @@ -5808,9 +5808,8 @@ ctl_write_same(struct ctl_scsiio *ctsio) break; /* NOTREACHED */ } - /* NDOB and ANCHOR flags can be used only together with UNMAP */ - if ((byte2 & SWS_UNMAP) == 0 && - (byte2 & (SWS_NDOB | SWS_ANCHOR)) != 0) { + /* ANCHOR flag can be used only together with UNMAP */ + if ((byte2 & SWS_UNMAP) == 0 && (byte2 & SWS_ANCHOR) != 0) { ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1, /*field*/ 1, /*bit_valid*/ 1, /*bit*/ 0); ctl_done((union ctl_io *)ctsio); Modified: head/sys/cam/ctl/ctl_backend_block.c == --- head/sys/cam/ctl/ctl_backend_block.cThu Sep 24 13:06:19 2015 (r288174) +++ head/sys/cam/ctl/ctl_backend_block.cThu Sep 24 15:59:08 2015 (r288175) @@ -1357,7 +1357,12 @@ ctl_be_block_cw_dispatch_ws(struct ctl_b buf = beio->sg_segs[i].addr; end = buf + seglen; for (; buf < end; buf += cbe_lun->blocksize) { - memcpy(buf, io->scsiio.kern_data_ptr, cbe_lun->blocksize); + if (lbalen->flags & SWS_NDOB) { + memset(buf, 0, cbe_lun->blocksize); + } else { + memcpy(buf, io->scsiio.kern_data_ptr, + cbe_lun->blocksize); + } if (lbalen->flags & SWS_LBDATA) scsi_ulto4b(lbalen->lba + lba, buf); lba++; ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
Re: svn commit: r287934 - head/sys/boot/efi/loader
... I'm confused about the "load it by hand" stuff in net80211. Why don't we just do the kldload at that point? -a On 23 September 2015 at 21:06, Warner Losh wrote: > You're right about the Wifi drivers. There's some number you'll want loaded > and we should have sensible defaults. But how to get there from here may > be a bit interesting... Though if I go with the devd.conf writer early in > boot, > I can make them be rc.conf variable controlled. > > Warner > > On Wed, Sep 23, 2015 at 8:13 PM, Rui Paulo wrote: >> >> Those were the issues that I encountered when I started using MINIMAL. >> I didn't do a thorough investigation. >> >> Auto loading is a much bigger problem that just loading drivers for >> PCI/USB/etc devices. For example, net80211 doesn't auto load the wlan >> crypto modules by default nor the amrr module. >> >> On Mon, 2015-09-21 at 17:59 -0600, Warner Losh wrote: >> > Apart from the inlining issue John raised (which I agree with his >> > solution on, btw) >> > and the one cam ctl module, what other modules are meaningfully >> > different when >> > compiled as modules. >> > >> > Assume that the auto-loading bit is solved, at least for devices on >> > self-enumerating >> > busses. >> > >> > Warner >> > >> > >> > > On Sep 21, 2015, at 4:53 PM, Rui Paulo wrote: >> > > >> > > No, that doesn't work very well. Not only the modules don't auto >> > > -load, the way the modules are compiled is different. See, for >> > > example, cam ctl which doesn't compile the sg code when it's built >> > > into the kernel, but compiles it when it's built as a module. The >> > > sg code is currently buggy and causes insta-panics with GNOME 3 >> > > (perhaps the auto-mounter in hald (?)). >> > > -- >> > > Rui Paulo >> > > >> > > >> > > On Sep 21, 2015, at 11:24 AM, Adrian Chadd >> > > wrote: >> > > >> > > > Hi, >> > > > >> > > > Warner has been working on the modular kernel thing. But >> > > > honestly, I >> > > > think we should just start biting that bullet and ship a modules >> > > > -only >> > > > GENERIC by default.. >> > > > >> > > > >> > > > -a >> > > > >> > > > >> > > > On 21 September 2015 at 11:02, Rui Paulo wrote: >> > > > > So, we're going to keep ignoring the problem and keep patching >> > > > > things up? >> > > > > It's a bit sad that a single driver (pmspcv) is able to cause >> > > > > so much >> > > > > problems. >> > > > > >> > > > > -- >> > > > > Rui Paulo >> > > > > >> > > > > >> > > > > On Sep 17, 2015, at 01:36 PM, John Baldwin >> > > > > wrote: >> > > > > >> > > > > Author: jhb >> > > > > Date: Thu Sep 17 20:36:46 2015 >> > > > > New Revision: 287934 >> > > > > URL: https://svnweb.freebsd.org/changeset/base/287934 >> > > > > >> > > > > >> > > > > Log: >> > > > > The EFI boot loader allocates a single chunk of contiguous >> > > > > memory to >> > > > > hold the kernel, modules, and any other loaded data. This >> > > > > memory block >> > > > > is relocated to the kernel's expected location during the >> > > > > transfer of >> > > > > control from the loader to the kernel. >> > > > > >> > > > > The GENERIC kernel on amd64 has recently grown such that a >> > > > > kernel + zfs.ko >> > > > > no longer fits in the default staging size. Bump the default >> > > > > size from >> > > > > 32MB to 48MB to provide more breathing room. >> > > > > >> > > > > PR: 201679 >> > > > > Reviewed by: imp >> > > > > MFC after: 1 week >> > > > > Differential Revision: https://reviews.freebsd.org/D3666 >> > > > > >> > > > > >> > > > > Modified: >> > > > > head/sys/boot/efi/loader/copy.c >> > > > > >> > > > > Modified: head/sys/boot/efi/loader/copy.c >> > > > > === >> > > > > === >> > > > > --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 >> > > > > (r287933) >> > > > > +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 >> > > > > (r287934) >> > > > > @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); >> > > > > #include >> > > > > >> > > > > #ifndef EFI_STAGING_SIZE >> > > > > -#define EFI_STAGING_SIZE 32 >> > > > > +#define EFI_STAGING_SIZE 48 >> > > > > #endif >> > > > > >> > > > > #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) >> > > > > >> > >> >> -- >> Rui Paulo >> > ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
Re: svn commit: r287886 - head/sys/sys
On 17/09/2015 14:07, Alexey Dokuchaev wrote: On Thu, Sep 17, 2015 at 12:58:59PM +0100, Steven Hartland wrote: On 17/09/2015 09:15, Alexey Dokuchaev wrote: On Thu, Sep 17, 2015 at 12:03:56AM +, Steven Hartland wrote: New Revision: 287886 URL: https://svnweb.freebsd.org/changeset/base/287886 Log: Fix kqueue write events for files > 2GB Oh that's an embarrassing bug. [...] Would you also consider merging to stable/8? Thanks, 8 isn't supported any more but the patch should apply to stable/8 sources if you maintain your own branch of it. So the answer is "no". It's OK, I'll ask for your approval and MFC it myself in due time (provided there won't be any regressions found). ./danfe This is all done now Alexey, did stable/8 while I was there and EN request has been sent too. Regards Steve ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288174 - stable/10/usr.bin/vtfontcvt
Author: emaste Date: Thu Sep 24 13:06:19 2015 New Revision: 288174 URL: https://svnweb.freebsd.org/changeset/base/288174 Log: MFC r287340: vtfontcvt: fix buffer overflow for non-default size .hex fonts And r287336 which introduced xmalloc. Sponsored by: The FreeBSD Foundation Modified: stable/10/usr.bin/vtfontcvt/vtfontcvt.c Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.bin/vtfontcvt/vtfontcvt.c == --- stable/10/usr.bin/vtfontcvt/vtfontcvt.c Thu Sep 24 12:54:50 2015 (r288173) +++ stable/10/usr.bin/vtfontcvt/vtfontcvt.c Thu Sep 24 13:06:19 2015 (r288174) @@ -96,6 +96,16 @@ usage(void) exit(1); } +static void * +xmalloc(size_t size) +{ + void *m; + + if ((m = malloc(size)) == NULL) + errx(1, "memory allocation failure"); + return (m); +} + static int add_mapping(struct glyph *gl, unsigned int c, unsigned int map_idx) { @@ -104,7 +114,7 @@ add_mapping(struct glyph *gl, unsigned i mapping_total++; - mp = malloc(sizeof *mp); + mp = xmalloc(sizeof *mp); mp->m_char = c; mp->m_glyph = gl; mp->m_length = 0; @@ -163,8 +173,8 @@ add_glyph(const uint8_t *bytes, unsigned } } - gl = malloc(sizeof *gl); - gl->g_data = malloc(wbytes * height); + gl = xmalloc(sizeof *gl); + gl->g_data = xmalloc(wbytes * height); memcpy(gl->g_data, bytes, wbytes * height); if (fallback) TAILQ_INSERT_HEAD(&glyphs[map_idx], gl, g_list); @@ -290,17 +300,26 @@ parse_hex(FILE *fp, unsigned int map_idx char *ln, *p; char fmt_str[8]; size_t length; - uint8_t bytes[wbytes * height], bytes_r[wbytes * height]; + uint8_t *bytes = NULL, *bytes_r = NULL; unsigned curchar = 0, i, line, chars_per_row, dwidth; + int rv = 0; while ((ln = fgetln(fp, &length)) != NULL) { ln[length - 1] = '\0'; if (strncmp(ln, "# Height: ", 10) == 0) { + if (bytes != NULL) + errx(1, "malformed input: Height tag after font data"); height = atoi(ln + 10); } else if (strncmp(ln, "# Width: ", 9) == 0) { + if (bytes != NULL) + errx(1, "malformed input: Width tag after font data"); set_width(atoi(ln + 9)); } else if (sscanf(ln, "%4x:", &curchar)) { + if (bytes == NULL) { + bytes = xmalloc(wbytes * height); + bytes_r = xmalloc(wbytes * height); + } p = ln + 5; chars_per_row = strlen(p) / height; dwidth = width; @@ -313,16 +332,23 @@ parse_hex(FILE *fp, unsigned int map_idx sscanf(p, fmt_str, &line); p += chars_per_row; if (parse_bitmap_line(bytes + i * wbytes, - bytes_r + i * wbytes, line, dwidth) != 0) - return (1); + bytes_r + i * wbytes, line, dwidth) != 0) { + rv = 1; + goto out; + } } if (add_char(curchar, map_idx, bytes, - dwidth == width * 2 ? bytes_r : NULL) != 0) - return (1); + dwidth == width * 2 ? bytes_r : NULL) != 0) { + rv = 1; + goto out; + } } } - return (0); +out: + free(bytes); + free(bytes_r); + return (rv); } static int ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288173 - in stable/10: sys/sys usr.bin/elfdump
Author: emaste Date: Thu Sep 24 12:54:50 2015 New Revision: 288173 URL: https://svnweb.freebsd.org/changeset/base/288173 Log: MFC r282916: Add ELF machine EM_IAMCU, 32-bit Intel MCU It is e_machine 6, which was previously reserved for 486. Modified: stable/10/sys/sys/elf_common.h stable/10/usr.bin/elfdump/elfdump.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/sys/elf_common.h == --- stable/10/sys/sys/elf_common.h Thu Sep 24 12:47:31 2015 (r288172) +++ stable/10/sys/sys/elf_common.h Thu Sep 24 12:54:50 2015 (r288173) @@ -144,6 +144,7 @@ typedef struct { #defineEM_386 3 /* Intel i386. */ #defineEM_68K 4 /* Motorola 68000. */ #defineEM_88K 5 /* Motorola 88000. */ +#defineEM_IAMCU6 /* Intel MCU. */ #defineEM_860 7 /* Intel i860. */ #defineEM_MIPS 8 /* MIPS R3000 Big-Endian only. */ #defineEM_S370 9 /* IBM System/370. */ Modified: stable/10/usr.bin/elfdump/elfdump.c == --- stable/10/usr.bin/elfdump/elfdump.c Thu Sep 24 12:47:31 2015 (r288172) +++ stable/10/usr.bin/elfdump/elfdump.c Thu Sep 24 12:54:50 2015 (r288173) @@ -261,6 +261,7 @@ e_machines(u_int mach) case EM_386:return "EM_386"; case EM_68K:return "EM_68K"; case EM_88K:return "EM_88K"; + case EM_IAMCU: return "EM_IAMCU"; case EM_860:return "EM_860"; case EM_MIPS: return "EM_MIPS"; case EM_PPC:return "EM_PPC"; ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288172 - stable/10/usr.bin/ar
Author: emaste Date: Thu Sep 24 12:47:31 2015 New Revision: 288172 URL: https://svnweb.freebsd.org/changeset/base/288172 Log: MFC r287327: ar: Deobfuscate a while loop Modified: stable/10/usr.bin/ar/ar.c Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.bin/ar/ar.c == --- stable/10/usr.bin/ar/ar.c Thu Sep 24 12:44:02 2015(r288171) +++ stable/10/usr.bin/ar/ar.c Thu Sep 24 12:47:31 2015(r288172) @@ -141,7 +141,7 @@ main(int argc, char **argv) ranlib_usage(); bsdar->options |= AR_S; - for (;(bsdar->filename = *argv++) != NULL;) + while ((bsdar->filename = *argv++) != NULL) ar_mode_s(bsdar); exit(EX_OK); ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288171 - in stable/10: sys/sys usr.bin/elfdump
Author: emaste Date: Thu Sep 24 12:44:02 2015 New Revision: 288171 URL: https://svnweb.freebsd.org/changeset/base/288171 Log: MFC r285841: Add RISC-V ELF machine type definition EM_RISCV is now officially registered as e_machine 243. Sponsored by: The FreeBSD Foundation Modified: stable/10/sys/sys/elf_common.h stable/10/usr.bin/elfdump/elfdump.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/sys/elf_common.h == --- stable/10/sys/sys/elf_common.h Thu Sep 24 12:22:47 2015 (r288170) +++ stable/10/sys/sys/elf_common.h Thu Sep 24 12:44:02 2015 (r288171) @@ -238,6 +238,7 @@ typedef struct { #defineEM_UNICORE 110 /* Microprocessor series from PKU-Unity Ltd. and MPRC of Peking University */ #defineEM_AARCH64 183 /* AArch64 (64-bit ARM) */ +#defineEM_RISCV243 /* RISC-V */ /* Non-standard or deprecated. */ #defineEM_486 6 /* Intel i486. */ Modified: stable/10/usr.bin/elfdump/elfdump.c == --- stable/10/usr.bin/elfdump/elfdump.c Thu Sep 24 12:22:47 2015 (r288170) +++ stable/10/usr.bin/elfdump/elfdump.c Thu Sep 24 12:44:02 2015 (r288171) @@ -271,6 +271,7 @@ e_machines(u_int mach) case EM_IA_64: return "EM_IA_64"; case EM_X86_64: return "EM_X86_64"; case EM_AARCH64:return "EM_AARCH64"; + case EM_RISCV: return "EM_RISCV"; } snprintf(machdesc, sizeof(machdesc), "(unknown machine) -- type 0x%x", mach); ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288170 - in head/sys/cam: ctl scsi
Author: mav Date: Thu Sep 24 12:22:47 2015 New Revision: 288170 URL: https://svnweb.freebsd.org/changeset/base/288170 Log: Add new report types to REPORT LUNS command. This is only for completeness, since we have nothing new to report there. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/scsi/scsi_all.h Modified: head/sys/cam/ctl/ctl.c == --- head/sys/cam/ctl/ctl.c Thu Sep 24 10:31:39 2015(r288169) +++ head/sys/cam/ctl/ctl.c Thu Sep 24 12:22:47 2015(r288170) @@ -9265,12 +9265,10 @@ ctl_report_luns(struct ctl_scsiio *ctsio struct ctl_port *port; int num_luns, retval; uint32_t alloc_len, lun_datalen; - int num_filled, well_known; + int num_filled; uint32_t initidx, targ_lun_id, lun_id; retval = CTL_RETVAL_COMPLETE; - well_known = 0; - cdb = (struct scsi_report_luns *)ctsio->cdb; port = ctl_io_port(&ctsio->io_hdr); @@ -9287,9 +9285,11 @@ ctl_report_luns(struct ctl_scsiio *ctsio switch (cdb->select_report) { case RPL_REPORT_DEFAULT: case RPL_REPORT_ALL: + case RPL_REPORT_NONSUBSID: break; case RPL_REPORT_WELLKNOWN: - well_known = 1; + case RPL_REPORT_ADMIN: + case RPL_REPORT_CONGLOM: num_luns = 0; break; default: Modified: head/sys/cam/scsi/scsi_all.h == --- head/sys/cam/scsi/scsi_all.hThu Sep 24 10:31:39 2015 (r288169) +++ head/sys/cam/scsi/scsi_all.hThu Sep 24 12:22:47 2015 (r288170) @@ -2864,6 +2864,9 @@ struct scsi_report_luns #defineRPL_REPORT_DEFAULT 0x00 #defineRPL_REPORT_WELLKNOWN0x01 #defineRPL_REPORT_ALL 0x02 +#defineRPL_REPORT_ADMIN0x10 +#defineRPL_REPORT_NONSUBSID0x11 +#defineRPL_REPORT_CONGLOM 0x12 uint8_t select_report; uint8_t reserved2[3]; uint8_t length[4]; ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288169 - stable/8/sys/sys
Author: smh Date: Thu Sep 24 10:31:39 2015 New Revision: 288169 URL: https://svnweb.freebsd.org/changeset/base/288169 Log: MFC r287886: Fix kqueue write events for files > 2GB Relnotes: YES Sponsored by: Multiplay Modified: stable/8/sys/sys/vnode.h Directory Properties: stable/8/sys/ (props changed) stable/8/sys/sys/ (props changed) Modified: stable/8/sys/sys/vnode.h == --- stable/8/sys/sys/vnode.hThu Sep 24 09:35:35 2015(r288168) +++ stable/8/sys/sys/vnode.hThu Sep 24 10:31:39 2015(r288169) @@ -742,7 +742,8 @@ voidvop_rename_fail(struct vop_rename_a #defineVOP_WRITE_PRE(ap) \ struct vattr va;\ - int error, osize, ooffset, noffset; \ + int error; \ + off_t osize, ooffset, noffset; \ \ osize = ooffset = noffset = 0; \ if (!VN_KNLIST_EMPTY((ap)->a_vp)) { \ @@ -750,7 +751,7 @@ voidvop_rename_fail(struct vop_rename_a if (error) \ return (error); \ ooffset = (ap)->a_uio->uio_offset; \ - osize = va.va_size; \ + osize = (off_t)va.va_size; \ } #define VOP_WRITE_POST(ap, ret) \ ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288168 - stable/9/sys/sys
Author: smh Date: Thu Sep 24 09:35:35 2015 New Revision: 288168 URL: https://svnweb.freebsd.org/changeset/base/288168 Log: MFC r287886: Fix kqueue write events for files > 2GB Relnotes: YES Sponsored by: Multiplay Modified: stable/9/sys/sys/vnode.h Directory Properties: stable/9/sys/ (props changed) stable/9/sys/sys/ (props changed) Modified: stable/9/sys/sys/vnode.h == --- stable/9/sys/sys/vnode.hThu Sep 24 08:42:08 2015(r288167) +++ stable/9/sys/sys/vnode.hThu Sep 24 09:35:35 2015(r288168) @@ -768,7 +768,8 @@ voidvop_rename_fail(struct vop_rename_a #defineVOP_WRITE_PRE(ap) \ struct vattr va;\ - int error, osize, ooffset, noffset; \ + int error; \ + off_t osize, ooffset, noffset; \ \ osize = ooffset = noffset = 0; \ if (!VN_KNLIST_EMPTY((ap)->a_vp)) { \ @@ -776,7 +777,7 @@ voidvop_rename_fail(struct vop_rename_a if (error) \ return (error); \ ooffset = (ap)->a_uio->uio_offset; \ - osize = va.va_size; \ + osize = (off_t)va.va_size; \ } #define VOP_WRITE_POST(ap, ret) \ ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288167 - stable/10/sys/sys
Author: smh Date: Thu Sep 24 08:42:08 2015 New Revision: 288167 URL: https://svnweb.freebsd.org/changeset/base/288167 Log: MFC r287886: Fix kqueue write events for files > 2GB Sponsored by: Multiplay Modified: stable/10/sys/sys/vnode.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/sys/vnode.h == --- stable/10/sys/sys/vnode.h Thu Sep 24 08:04:47 2015(r288166) +++ stable/10/sys/sys/vnode.h Thu Sep 24 08:42:08 2015(r288167) @@ -788,7 +788,8 @@ voidvop_rename_fail(struct vop_rename_a #defineVOP_WRITE_PRE(ap) \ struct vattr va;\ - int error, osize, ooffset, noffset; \ + int error; \ + off_t osize, ooffset, noffset; \ \ osize = ooffset = noffset = 0; \ if (!VN_KNLIST_EMPTY((ap)->a_vp)) { \ @@ -796,7 +797,7 @@ voidvop_rename_fail(struct vop_rename_a if (error) \ return (error); \ ooffset = (ap)->a_uio->uio_offset; \ - osize = va.va_size; \ + osize = (off_t)va.va_size; \ } #define VOP_WRITE_POST(ap, ret) \ ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288166 - in head/sys/cam: ctl scsi
Author: mav Date: Thu Sep 24 08:04:47 2015 New Revision: 288166 URL: https://svnweb.freebsd.org/changeset/base/288166 Log: Update WRITE ATOMIC(16) support to sbc4r8 draft. This is only a cosmetic change. We still don't support atomic boundary field in the CDB, but at least now we do it formally. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/scsi_ctl.c head/sys/cam/scsi/scsi_all.h Modified: head/sys/cam/ctl/ctl.c == --- head/sys/cam/ctl/ctl.c Thu Sep 24 07:16:34 2015(r288165) +++ head/sys/cam/ctl/ctl.c Thu Sep 24 08:04:47 2015(r288166) @@ -8940,7 +8940,7 @@ ctl_read_write(struct ctl_scsiio *ctsio) break; } case WRITE_ATOMIC_16: { - struct scsi_rw_16 *cdb; + struct scsi_write_atomic_16 *cdb; if (lun->be_lun->atomicblock == 0) { ctl_set_invalid_opcode(ctsio); @@ -8948,13 +8948,13 @@ ctl_read_write(struct ctl_scsiio *ctsio) return (CTL_RETVAL_COMPLETE); } - cdb = (struct scsi_rw_16 *)ctsio->cdb; + cdb = (struct scsi_write_atomic_16 *)ctsio->cdb; if (cdb->byte2 & SRW12_FUA) flags |= CTL_LLF_FUA; if (cdb->byte2 & SRW12_DPO) flags |= CTL_LLF_DPO; lba = scsi_8btou64(cdb->addr); - num_blocks = scsi_4btoul(cdb->length); + num_blocks = scsi_2btoul(cdb->length); if (num_blocks > lun->be_lun->atomicblock) { ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1, /*field*/ 12, /*bit_valid*/ 0, @@ -10148,6 +10148,8 @@ ctl_inquiry_evpd_block_limits(struct ctl bl_ptr->max_atomic_transfer_length); scsi_ulto4b(0, bl_ptr->atomic_alignment); scsi_ulto4b(0, bl_ptr->atomic_transfer_length_granularity); + scsi_ulto4b(0, bl_ptr->max_atomic_transfer_length_with_atomic_boundary); + scsi_ulto4b(0, bl_ptr->max_atomic_boundary_size); } scsi_u64to8b(UINT64_MAX, bl_ptr->max_write_same_length); @@ -10647,8 +10649,7 @@ ctl_get_lba_len(union ctl_io *io, uint64 break; } case READ_16: - case WRITE_16: - case WRITE_ATOMIC_16: { + case WRITE_16: { struct scsi_rw_16 *cdb; cdb = (struct scsi_rw_16 *)io->scsiio.cdb; @@ -10657,6 +10658,15 @@ ctl_get_lba_len(union ctl_io *io, uint64 *len = scsi_4btoul(cdb->length); break; } + case WRITE_ATOMIC_16: { + struct scsi_write_atomic_16 *cdb; + + cdb = (struct scsi_write_atomic_16 *)io->scsiio.cdb; + + *lba = scsi_8btou64(cdb->addr); + *len = scsi_2btoul(cdb->length); + break; + } case WRITE_VERIFY_16: { struct scsi_write_verify_16 *cdb; Modified: head/sys/cam/ctl/scsi_ctl.c == --- head/sys/cam/ctl/scsi_ctl.c Thu Sep 24 07:16:34 2015(r288165) +++ head/sys/cam/ctl/scsi_ctl.c Thu Sep 24 08:04:47 2015(r288166) @@ -1068,7 +1068,6 @@ ctlfe_adjust_cdb(struct ccb_accept_tio * } case READ_16: case WRITE_16: - case WRITE_ATOMIC_16: { struct scsi_rw_16 *cdb = (struct scsi_rw_16 *)cmdbyt; lba = scsi_8btou64(cdb->addr); Modified: head/sys/cam/scsi/scsi_all.h == --- head/sys/cam/scsi/scsi_all.hThu Sep 24 07:16:34 2015 (r288165) +++ head/sys/cam/scsi/scsi_all.hThu Sep 24 08:04:47 2015 (r288166) @@ -1283,6 +1283,17 @@ struct scsi_rw_16 u_int8_t control; }; +struct scsi_write_atomic_16 +{ + uint8_t opcode; + uint8_t byte2; + uint8_t addr[8]; + uint8_t boundary[2]; + uint8_t length[2]; + uint8_t group; + uint8_t control; +}; + struct scsi_write_same_10 { uint8_t opcode; @@ -2757,7 +2768,8 @@ struct scsi_vpd_block_limits u_int8_t max_atomic_transfer_length[4]; u_int8_t atomic_alignment[4]; u_int8_t atomic_transfer_length_granularity[4]; - u_int8_t reserved2[8]; + u_int8_t max_atomic_transfer_length_with_atomic_boundary[4]; + u_int8_t max_atomic_boundary_size[4]; }; struct scsi_read_capacity ___ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r288165 - in head/sys/cam: ctl scsi
Author: mav Date: Thu Sep 24 07:16:34 2015 New Revision: 288165 URL: https://svnweb.freebsd.org/changeset/base/288165 Log: Add support for READ BUFFER(16) command. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_cmd_table.c head/sys/cam/scsi/scsi_all.h Modified: head/sys/cam/ctl/ctl.c == --- head/sys/cam/ctl/ctl.c Thu Sep 24 00:54:46 2015(r288164) +++ head/sys/cam/ctl/ctl.c Thu Sep 24 07:16:34 2015(r288165) @@ -5610,20 +5610,43 @@ bailout: int ctl_read_buffer(struct ctl_scsiio *ctsio) { - struct scsi_read_buffer *cdb; struct ctl_lun *lun; - int buffer_offset, len; + uint64_t buffer_offset; + uint32_t len; + uint8_t byte2; static uint8_t descr[4]; static uint8_t echo_descr[4] = { 0 }; CTL_DEBUG_PRINT(("ctl_read_buffer\n")); - lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; - cdb = (struct scsi_read_buffer *)ctsio->cdb; + switch (ctsio->cdb[0]) { + case READ_BUFFER: { + struct scsi_read_buffer *cdb; - if ((cdb->byte2 & RWB_MODE) != RWB_MODE_DATA && - (cdb->byte2 & RWB_MODE) != RWB_MODE_ECHO_DESCR && - (cdb->byte2 & RWB_MODE) != RWB_MODE_DESCR) { + cdb = (struct scsi_read_buffer *)ctsio->cdb; + buffer_offset = scsi_3btoul(cdb->offset); + len = scsi_3btoul(cdb->length); + byte2 = cdb->byte2; + break; + } + case READ_BUFFER_16: { + struct scsi_read_buffer_16 *cdb; + + cdb = (struct scsi_read_buffer_16 *)ctsio->cdb; + buffer_offset = scsi_8btou64(cdb->offset); + len = scsi_4btoul(cdb->length); + byte2 = cdb->byte2; + break; + } + default: /* This shouldn't happen. */ + ctl_set_invalid_opcode(ctsio); + ctl_done((union ctl_io *)ctsio); + return (CTL_RETVAL_COMPLETE); + } + + if ((byte2 & RWB_MODE) != RWB_MODE_DATA && + (byte2 & RWB_MODE) != RWB_MODE_ECHO_DESCR && + (byte2 & RWB_MODE) != RWB_MODE_DESCR) { ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1, @@ -5634,10 +5657,8 @@ ctl_read_buffer(struct ctl_scsiio *ctsio return (CTL_RETVAL_COMPLETE); } - len = scsi_3btoul(cdb->length); - buffer_offset = scsi_3btoul(cdb->offset); - - if (buffer_offset + len > CTL_WRITE_BUFFER_SIZE) { + if (buffer_offset > CTL_WRITE_BUFFER_SIZE || + buffer_offset + len > CTL_WRITE_BUFFER_SIZE) { ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1, @@ -5648,12 +5669,12 @@ ctl_read_buffer(struct ctl_scsiio *ctsio return (CTL_RETVAL_COMPLETE); } - if ((cdb->byte2 & RWB_MODE) == RWB_MODE_DESCR) { + if ((byte2 & RWB_MODE) == RWB_MODE_DESCR) { descr[0] = 0; scsi_ulto3b(CTL_WRITE_BUFFER_SIZE, &descr[1]); ctsio->kern_data_ptr = descr; len = min(len, sizeof(descr)); - } else if ((cdb->byte2 & RWB_MODE) == RWB_MODE_ECHO_DESCR) { + } else if ((byte2 & RWB_MODE) == RWB_MODE_ECHO_DESCR) { ctsio->kern_data_ptr = echo_descr; len = min(len, sizeof(echo_descr)); } else { Modified: head/sys/cam/ctl/ctl_cmd_table.c == --- head/sys/cam/ctl/ctl_cmd_table.cThu Sep 24 00:54:46 2015 (r288164) +++ head/sys/cam/ctl/ctl_cmd_table.cThu Sep 24 07:16:34 2015 (r288165) @@ -1155,8 +1155,16 @@ const struct ctl_cmd_entry ctl_cmd_table /* 9A */ {NULL, CTL_SERIDX_INVLD, CTL_CMD_FLAG_NONE, CTL_LUN_PAT_NONE}, -/* 9B */ -{NULL, CTL_SERIDX_INVLD, CTL_CMD_FLAG_NONE, CTL_LUN_PAT_NONE}, +/* 9B READ BUFFER(16) */ +{ctl_read_buffer, CTL_SERIDX_MD_SNS, CTL_CMD_FLAG_OK_ON_BOTH | +CTL_CMD_FLAG_OK_ON_STOPPED | +CTL_CMD_FLAG_OK_ON_INOPERABLE | +CTL_CMD_FLAG_OK_ON_STANDBY | +CTL_FLAG_DATA_IN | +CTL_CMD_FLAG_ALLOW_ON_PR_WRESV, + CTL_LUN_PAT_NONE, + 10, {0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0, 0x07}}, /* 9C WRITE ATOMIC (16) */ {ctl_read_write, CTL_SERIDX_WRITE, CTL_CMD_FLAG_OK_ON_SLUN| CTL_FLAG_DATA_OUT, Modified: head/sys/cam/scsi/scsi_all.h == --- head/sys/cam/scsi/scsi_all.hThu Sep 24 00:54:46 2015 (r288164) +++ head/sys/cam/scsi/scsi_all