Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build failure on 12-CURRENT (freebsd_dev.c:206:14: error: no member named 'opc' in 'struct nvme_command') #3

Closed
Jehops opened this issue Mar 14, 2018 · 6 comments
Assignees

Comments

@Jehops
Copy link

Jehops commented Mar 14, 2018

Hello,

Here is full a build log.

---Begin Environment---
SHELL=/bin/csh
OSVERSION=1200060
UNAME_v=FreeBSD 12.0-CURRENT 1200060
UNAME_r=12.0-CURRENT
BLOCKSIZE=K
MAIL=/var/mail/root
STATUS=1
HOME=/root
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin
LOCALBASE=/usr/local
USER=root
LIBEXECPREFIX=/usr/local/libexec/poudriere
POUDRIERE_VERSION=3.2.5-3-gef344f26
MASTERMNT=/usr/local/poudriere/data/.m/head-amd64-default/ref
POUDRIERE_BUILD_TYPE=bulk
PACKAGE_BUILDING=yes
SAVED_TERM=
PWD=/usr/local/poudriere/data/.m/head-amd64-default/ref/.p/pool
P_PORTS_FEATURES=FLAVORS SELECTED_OPTIONS
MASTERNAME=head-amd64-default
SCRIPTPREFIX=/usr/local/share/poudriere
OLDPWD=/usr/local/poudriere/data/.m/head-amd64-default/ref/.p
SCRIPTPATH=/usr/local/share/poudriere/bulk.sh
POUDRIEREPATH=/usr/local/bin/poudriere
---End Environment---

---Begin Poudriere Port Flags/Env---
PORT_FLAGS=
PKGENV=
FLAVOR=
DEPENDS_ARGS=
MAKE_ARGS=
---End Poudriere Port Flags/Env---

---Begin OPTIONS List---
---End OPTIONS List---

--MAINTAINER--
jrm@FreeBSD.org
--End MAINTAINER--

--CONFIGURE_ARGS--

--End CONFIGURE_ARGS--

--CONFIGURE_ENV--
XDG_DATA_HOME=/wrkdirs/usr/ports/sysutils/smart/work XDG_CONFIG_HOME=/wrkdirs/usr/ports/sysutils/smart/work HOME=/wrkdirs/usr/ports/sysutils/smart/work TMPDIR="/tmp"
PATH=/wrkdirs/usr/ports/sysutils/smart/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin SHELL=/bin/sh CONFIG_SHELL=/bin/sh
--End CONFIGURE_ENV--

--MAKE_ENV--
XDG_DATA_HOME=/wrkdirs/usr/ports/sysutils/smart/work XDG_CONFIG_HOME=/wrkdirs/usr/ports/sysutils/smart/work HOME=/wrkdirs/usr/ports/sysutils/smart/work TMPDIR="/tmp"
PATH=/wrkdirs/usr/ports/sysutils/smart/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin NO_PIE=yes MK_DEBUG_FILES=no MK_KERNEL_SYMBOLS=no SHELL=/bin/sh NO_LINT=YES
PREFIX=/usr/local LOCALBASE=/usr/local LIBDIR="/usr/lib" CC="cc" CFLAGS="-O2 -pipe -fstack-protector -fno-strict-aliasing" CPP="cpp" CPPFLAGS="" LDFLAGS=" -fstack-protector" LIBS="" CXX="c++" CXXFLAGS="-O2
-pipe -fstack-protector -fno-strict-aliasing " MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install -s -m 555" BSD_INSTALL_LIB="install -s -m 0644" BSD_INSTALL_SCRIPT="install -m 555" BSD_INSTALL_DATA="install
-m 0644" BSD_INSTALL_MAN="install -m 444"
--End MAKE_ENV--

--PLIST_SUB--
PORTDOCS="" PORTEXAMPLES="" OSREL=12.0 PREFIX=%D LOCALBASE=/usr/local RESETPREFIX=/usr/local LIB32DIR=lib DOCSDIR="share/doc/smart" EXAMPLESDIR="share/examples/smart" DATADIR="share/smart" WWWDIR="www/smart"
ETCDIR="etc/smart"
--End PLIST_SUB--

--SUB_LIST--
PREFIX=/usr/local LOCALBASE=/usr/local  DATADIR=/usr/local/share/smart DOCSDIR=/usr/local/share/doc/smart EXAMPLESDIR=/usr/local/share/examples/smart  WWWDIR=/usr/local/www/smart ETCDIR=/usr/local/etc/smart
--End SUB_LIST--

---Begin make.conf---
USE_PACKAGE_DEPENDS=yes
BATCH=yes
WRKDIRPREFIX=/wrkdirs
PORTSDIR=/usr/ports
PACKAGES=/packages
DISTDIR=/distfiles
PACKAGE_BUILDING=yes
PACKAGE_BUILDING_FLAVORS=yes
#### /usr/local/etc/poudriere.d/make.conf ####
# XXX: We really need this but cannot use it while 'make checksum' does not
# try the next mirror on checksum failure.  It currently retries the same
# failed mirror and then fails rather then trying another.  It *does*
# try the next if the size is mismatched though.
#MASTER_SITE_FREEBSD=yes
# Build ALLOW_MAKE_JOBS_PACKAGES with 2 jobs
MAKE_JOBS_NUMBER=2
#### /usr/ports/Mk/Scripts/ports_env.sh ####
_CCVERSION_921dbbb2=FreeBSD clang version 6.0.0 (tags/RELEASE_600/final 326565) (based on LLVM 6.0.0) Target: x86_64-unknown-freebsd12.0 Thread model: posix InstalledDir: /usr/bin
_ALTCCVERSION_921dbbb2=none
_CXXINTERNAL_acaad9ca=FreeBSD clang version 6.0.0 (tags/RELEASE_600/final 326565) (based on LLVM 6.0.0) Target: x86_64-unknown-freebsd12.0 Thread model: posix InstalledDir: /usr/bin "/usr/bin/ld"
"--eh-frame-hdr" "-dynamic-linker" "/libexec/ld-elf.so.1" "--hash-style=both" "--enable-new-dtags" "-o" "a.out" "/usr/lib/crt1.o" "/usr/lib/crti.o" "/usr/lib/crtbegin.o" "-L/usr/lib" "/dev/null" "-lc++" "-lm"
"-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "/usr/lib/crtend.o" "/usr/lib/crtn.o"
OUTPUT_58173849_921dbbb2=yes
OUTPUT_9bdba57c_921dbbb2=yes
OUTPUT_6a4fe7f5_921dbbb2=yes
OUTPUT_6bcac02b_921dbbb2=yes
OUTPUT_67d20829_921dbbb2=yes
OUTPUT_bfa62e83_921dbbb2=yes
OUTPUT_f0b4d593_921dbbb2=yes
OUTPUT_308abb44_921dbbb2=yes
OUTPUT_f00456e5_921dbbb2=yes
OUTPUT_65ad290d_921dbbb2=yes
OUTPUT_b2657cc3_921dbbb2=yes
OUTPUT_380987f7_921dbbb2=yes
ARCH=amd64
OPSYS=FreeBSD
_OSRELEASE=12.0-CURRENT
OSREL=12.0
OSVERSION=1200060
PYTHONBASE=/usr/local
HAVE_COMPAT_IA32_KERN=YES
CONFIGURE_MAX_CMD_LEN=262144
HAVE_PORTS_ENV=1
#### Misc Poudriere ####
GID=0
DISABLE_MAKE_JOBS=poudriere
---End make.conf---
--Resource limits--
cpu time               (seconds, -t)  unlimited
file size           (512-blocks, -f)  unlimited
data seg size           (kbytes, -d)  33554432
stack size              (kbytes, -s)  524288
core file size      (512-blocks, -c)  unlimited
max memory size         (kbytes, -m)  unlimited
locked memory           (kbytes, -l)  unlimited
max user processes              (-u)  89999
open files                      (-n)  1024
virtual mem size        (kbytes, -v)  unlimited
swap limit              (kbytes, -w)  unlimited
socket buffer size       (bytes, -b)  unlimited
pseudo-terminals                (-p)  unlimited
kqueues                         (-k)  unlimited
umtx shared locks               (-o)  unlimited
--End resource limits--
=======================<phase: check-sanity   >============================
===>  License ISCL accepted by the user
===========================================================================
=======================<phase: pkg-depends    >============================
===>   smart-0.0.6 depends on file: /usr/local/sbin/pkg - not found
===>   Installing existing package /packages/All/pkg-1.10.5.txz
[head-amd64-default-job-03] Installing pkg-1.10.5...
[head-amd64-default-job-03] Extracting pkg-1.10.5: .......... done
===>   smart-0.0.6 depends on file: /usr/local/sbin/pkg - found
===>   Returning to build of smart-0.0.6
===========================================================================
=======================<phase: fetch-depends  >============================
===========================================================================
=======================<phase: fetch          >============================
===>  License ISCL accepted by the user
===> Fetching all distfiles required by smart-0.0.6 for building
===========================================================================
=======================<phase: checksum       >============================
===>  License ISCL accepted by the user
===> Fetching all distfiles required by smart-0.0.6 for building
=> SHA256 Checksum OK for ctuffli-smart-0.0.6_GH0.tar.gz.
===========================================================================
=======================<phase: extract-depends>============================
===========================================================================
=======================<phase: extract        >============================
===>  License ISCL accepted by the user
===> Fetching all distfiles required by smart-0.0.6 for building
===>  Extracting for smart-0.0.6
=> SHA256 Checksum OK for ctuffli-smart-0.0.6_GH0.tar.gz.
===========================================================================
=======================<phase: patch-depends  >============================
===========================================================================
=======================<phase: patch          >============================
===>  Patching for smart-0.0.6
===========================================================================
=======================<phase: build-depends  >============================
===========================================================================
=======================<phase: lib-depends    >============================
===========================================================================
=======================<phase: configure      >============================
===>  Configuring for smart-0.0.6
===========================================================================
=======================<phase: build          >============================
===>  Building for smart-0.0.6
echo smart: /usr/lib/libc.a  >> .depend
Warning: Object directory not changed from original /wrkdirs/usr/ports/sysutils/smart/work/smart-0.0.6
cc  -O2 -pipe  -fstack-protector -fno-strict-aliasing   -MD  -MF.depend.smart.o -MTsmart.o -std=gnu99 -fstack-protector-strong    -Qunused-arguments  -c smart.c -o smart.o
cc  -O2 -pipe  -fstack-protector -fno-strict-aliasing   -MD  -MF.depend.libsmart.o -MTlibsmart.o -std=gnu99 -fstack-protector-strong    -Qunused-arguments  -c libsmart.c -o libsmart.o
cc  -O2 -pipe  -fstack-protector -fno-strict-aliasing   -MD  -MF.depend.freebsd_dev.o -MTfreebsd_dev.o -std=gnu99 -fstack-protector-strong    -Qunused-arguments  -c freebsd_dev.c -o freebsd_dev.o
freebsd_dev.c:206:14: error: no member named 'opc' in 'struct nvme_command'
        nvmeio->cmd.opc = NVME_OPC_GET_LOG_PAGE;
        ~~~~~~~~~~~ ^
1 error generated.
*** Error code 1

Stop.
make[1]: stopped in /wrkdirs/usr/ports/sysutils/smart/work/smart-0.0.6
*** Error code 1

Stop.
make: stopped in /usr/ports/sysutils/smart

@ctuffli ctuffli self-assigned this Mar 14, 2018
@ctuffli
Copy link
Owner

ctuffli commented Mar 14, 2018

Ugh. The changes to support big-endian broke smart. I'll try to have some changes later, but this will be complicated as 11 and 12 have different CCB definitions.

@ctuffli
Copy link
Owner

ctuffli commented Mar 15, 2018

@Jehops I can push a change to fix the immediate problem, but given the on-going discussions, I suspect there are further changes in the base system which will cause another batch of changes. Would you prefer one big fix once the dust settles in base or multiple iterative patches?

Note there is a possibility of the change in base causing this breakage being reverted which would, in turn, require reverting any change here.

@Jehops
Copy link
Author

Jehops commented Mar 15, 2018

Your call. Either works for me.

@ctuffli
Copy link
Owner

ctuffli commented Mar 16, 2018

FYI, current discussion https://reviews.freebsd.org/D14703

Jehops added a commit to Jehops/freebsd-ports-legacy that referenced this issue Mar 19, 2018
See ctuffli/smart#3 for details.


git-svn-id: svn+ssh://svn.freebsd.org/ports/head@464973 35697150-7ecd-e111-bb59-0022644237b5
uqs pushed a commit to freebsd/freebsd-ports that referenced this issue Mar 19, 2018
See ctuffli/smart#3 for details.


git-svn-id: svn+ssh://svn.freebsd.org/ports/head@464973 35697150-7ecd-e111-bb59-0022644237b5
uqs pushed a commit to freebsd/freebsd-ports that referenced this issue Mar 19, 2018
swills pushed a commit to swills/freebsd-ports that referenced this issue Mar 19, 2018
See ctuffli/smart#3 for details.


git-svn-id: svn+ssh://svn.freebsd.org/ports/head@464973 35697150-7ecd-e111-bb59-0022644237b5
ctuffli added a commit that referenced this issue Mar 20, 2018
The application was incorrectly reporting that some devices didn't
support SMART eventhough camcontrol identify showed the device did
support SMART. This was reported and observed on SATA devices behind a
SAS controller.

Fix is to use ATA 16 variant of passthrough command.

resolved bug #3
@ctuffli
Copy link
Owner

ctuffli commented Mar 20, 2018

Version 0.0.8 should address the build breakage on 12-current. Additionally, this enable NVMe for 11-stable and fixes a bug discovered with SCSI passthrough of ATA devices.

@Jehops
Copy link
Author

Jehops commented Mar 20, 2018

Thanks! I will update the port now.

@Jehops Jehops closed this as completed Mar 20, 2018
svmhdvn pushed a commit to svmhdvn/freebsd-ports that referenced this issue Jan 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants