Modify

Opened 11 years ago

Closed 11 years ago

Last modified 4 years ago

#1290 closed defect (wontfix)

OpenWRT compile error

Reported by: slavon Owned by: developers
Priority: high Milestone: Barrier Breaker 14.07
Component: packages Version:
Keywords: Cc:

Description

softdog.c: In function 'softdog_write':
softdog.c:154: error: read-only variable '__gu_val' used as 'asm' output
softdog.c:154: error: read-only variable '__gu_val' used as 'asm' output
softdog.c:154: error: read-only variable '__gu_val' used as 'asm' output
softdog.c:154: error: read-only variable '__gu_val' used as 'asm' output

bug in toolchain_build_mipsel/linux/include/asm/uaccess.h

this fix for some problem on asm-m68knommu http://www.codesourcery.com/archives/coldfire-gnu-discuss/msg00016.html maybe help for you.

Attachments (0)

Change History (5)

comment:1 Changed 11 years ago by slavon

Sorry... Component is system

comment:2 Changed 11 years ago by slavon

i fast (not fact what fast it good) this problem....

build_mipsel/linux-2.4-brcm/linux-2.4.34/include/asm/uaccess.h

replace this functions

#define __get_user_nocheck(x,ptr,size)                                  \
({                                                                      \
        long __gu_err = 0;                                              \
        long __gu_addr;                                                 \
        __gu_addr = (long) (ptr);                                       \
        switch (size) {                                                 \
        case 1: {                                                       \
                unsigned char __gu_val = 0;                             \
                __get_user_asm("lb", __gu_err);                         \
                x = (__typeof__(*(ptr))) __gu_val; break;               \
        } case 2: {                                                     \
                unsigned short __gu_val = 0;                            \
                __get_user_asm("lh", __gu_err);                         \
                x = (__typeof__(*(ptr))) __gu_val; break;               \
        } case 4: {                                                     \
                unsigned int __gu_val = 0;                              \
                __get_user_asm("lw", __gu_err);                         \
                x = (__typeof__(*(ptr))) __gu_val; break;               \
        } case 8: {                                                     \
                unsigned long long __gu_val = 0;                        \
                __GET_USER_DW(__gu_err);                                \
                x = (__typeof__(*(ptr))) __gu_val; break;               \
        } default: __get_user_unknown(); break;                         \
        }                                                               \
        __gu_err;                                                       \
})



#define __get_user_check(x,ptr,size)                                    \
({                                                                      \
        long __gu_addr = (long) (ptr);                                  \
        long __gu_err;                                                  \
                                                                        \
        __gu_err = verify_area(VERIFY_READ, (void *) __gu_addr, size);  \
                                                                        \
        if (likely(!__gu_err)) {                                        \
                switch (size) {                                         \
                case 1: {                                               \
                        unsigned char __gu_val = 0;                     \
                        __get_user_asm("lb", __gu_err);                 \
                        x = (__typeof__(*(ptr))) __gu_val; break;       \
                } case 2: {                                             \
                        unsigned short __gu_val = 0;                    \
                        __get_user_asm("lh", __gu_err);                 \
                        x = (__typeof__(*(ptr))) __gu_val; break;       \
                } case 4: {                                             \
                        unsigned int __gu_val = 0;                      \
                        __get_user_asm("lw", __gu_err);                 \
                        x = (__typeof__(*(ptr))) __gu_val; break;       \
                } case 8: {                                             \
                        unsigned long long __gu_val = 0;                \
                        __GET_USER_DW(__gu_err);                        \
                        x = (__typeof__(*(ptr))) __gu_val; break;       \
                } default: __get_user_unknown(); break;                 \
                }                                                       \
        }                                                               \
         __gu_err;                                                      \
})

problem that (typeof(*(ptr))) have "const" type...

comment:3 Changed 11 years ago by slavon

OpenWrt today sync (30-01-2007)

System Gentoo

gcc 4.1.1

Info:

System uname: 2.6.18-gentoo-r3 i686 Intel(R) Celeron(R) CPU 2.93GHz
Gentoo Base System version 1.12.9
Timestamp of tree: Fri, 26 Jan 2007 06:20:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-java/java-config: 1.3.7, 2.0.31-r3
dev-lang/python:     2.4.4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.19.2-r1
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="ru_RU.CP1251"
LINGUAS="ru"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X a52 aac aalib alsa apache2 arts berkdb bitmap-fonts browserplugin cli cracklib crypt cups dlloader dri dvd ffmpeg fortran gd gdbm gif gpm gtk h264 i8x0 iconv isdnlog jpeg jpg kde kdeenablefinal libg++ mmx mmxext mozilla mp3 mp4 mpeg mysql ncurses nls nptl nptln nptlonly ogg opengl pam pcre pdf perl php png ppds pppd python qt qt3 qt4 quicktime readline reflection rtsp samba sb session snmp speex spl sse sse2 ssl stream tcpd threads tiff truetype-fonts type1-fonts udev unicode usb vcd vorbis win32codecs wxwindows x86 xcomposite xorg xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="ru" USERLAND="GNU" VIDEO_CARDS="i810 radeon"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS

comment:4 Changed 11 years ago by nbd

  • Resolution set to wontfix
  • Status changed from new to closed

GCC 4.1.1 is not supported for Linux 2.4 targets...

comment:5 Changed 4 years ago by jow

  • Milestone changed from Attitude Adjustment 12.09 to Barrier Breaker 14.07

Milestone Attitude Adjustment 12.09 deleted

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.