svn commit: r268854 - head/sys/dev/bxe
Bjoern A. Zeeb
bzeeb-lists at lists.zabbadoz.net
Fri Jul 18 21:25:06 UTC 2014
On 18 Jul 2014, at 20:04 , David C Somayajulu <davidcs at FreeBSD.org> wrote:
> Author: davidcs
> Date: Fri Jul 18 20:04:11 2014
> New Revision: 268854
> URL: http://svnweb.freebsd.org/changeset/base/268854
>
> Log:
> Initiate error recovery stats fail to update after 3 retries.
> Change bxe_panic() ECORE_DBG_BREAK_IF() ECORE_BUG() ECORE_BUG_ON() to
> panic only if ECORE_STOP_ON_ERROR is defined.
>
> MFC after:5 days
This broke builds:
/scratch/tmp/bz/head.svn/sys/modules/bxe/../../dev/bxe/bxe_stats.c:1305:11: error: no member named 'ifnet' in 'struct bxe_softc'
>
> Modified:
> head/sys/dev/bxe/bxe.c
> head/sys/dev/bxe/bxe.h
> head/sys/dev/bxe/bxe_stats.c
> head/sys/dev/bxe/ecore_reg.h
> head/sys/dev/bxe/ecore_sp.h
>
> Modified: head/sys/dev/bxe/bxe.c
> ==============================================================================
> --- head/sys/dev/bxe/bxe.c Fri Jul 18 18:11:24 2014 (r268853)
> +++ head/sys/dev/bxe/bxe.c Fri Jul 18 20:04:11 2014 (r268854)
> @@ -11471,6 +11471,10 @@ bxe_process_kill(struct bxe_softc *sc,
> bxe_process_kill_chip_reset(sc, global);
> mb();
>
> + /* clear errors in PGB */
> + if (!CHIP_IS_E1(sc))
> + REG_WR(sc, PGLUE_B_REG_LATCHED_ERRORS_CLR, 0x7f);
> +
> /* Recover after reset: */
> /* MCP */
> if (global && bxe_reset_mcp_comp(sc, val)) {
>
> Modified: head/sys/dev/bxe/bxe.h
> ==============================================================================
> --- head/sys/dev/bxe/bxe.h Fri Jul 18 18:11:24 2014 (r268853)
> +++ head/sys/dev/bxe/bxe.h Fri Jul 18 20:04:11 2014 (r268854)
> @@ -2301,11 +2301,20 @@ void ecore_storm_memset_struct(struct bx
> } \
> } while(0)
>
> +#ifdef ECORE_STOP_ON_ERROR
> +
> #define bxe_panic(sc, msg) \
> do { \
> panic msg; \
> } while (0)
>
> +#else
> +
> +#define bxe_panic(sc, msg) \
> + device_printf((sc)->dev, "%s (%s,%d)\n", __FUNCTION__, __FILE__, __LINE__);
> +
> +#endif
> +
> #define CATC_TRIGGER(sc, data) REG_WR((sc), 0x2000, (data));
> #define CATC_TRIGGER_START(sc) CATC_TRIGGER((sc), 0xcafecafe)
>
>
> Modified: head/sys/dev/bxe/bxe_stats.c
> ==============================================================================
> --- head/sys/dev/bxe/bxe_stats.c Fri Jul 18 18:11:24 2014 (r268853)
> +++ head/sys/dev/bxe/bxe_stats.c Fri Jul 18 20:04:11 2014 (r268854)
> @@ -1302,7 +1302,10 @@ bxe_stats_update(struct bxe_softc *sc)
>
> if (bxe_storm_stats_update(sc)) {
> if (sc->stats_pending++ == 3) {
> - bxe_panic(sc, ("storm stats not updated for 3 times\n"));
> + if (sc->ifnet->if_drv_flags & IFF_DRV_RUNNING) {
> + atomic_store_rel_long(&sc->chip_tq_flags, CHIP_TQ_REINIT);
> + taskqueue_enqueue(sc->chip_tq, &sc->chip_tq_task);
> + }
> }
> return;
> }
>
> Modified: head/sys/dev/bxe/ecore_reg.h
> ==============================================================================
> --- head/sys/dev/bxe/ecore_reg.h Fri Jul 18 18:11:24 2014 (r268853)
> +++ head/sys/dev/bxe/ecore_reg.h Fri Jul 18 20:04:11 2014 (r268854)
> @@ -1039,6 +1039,8 @@ __FBSDID("$FreeBSD$");
> 0x942cUL
> #define PGLUE_B_REG_INTERNAL_PFID_ENABLE_TARGET_READ \
> 0x9430UL
> +#define PGLUE_B_REG_LATCHED_ERRORS_CLR \
> + 0x943CUL
> #define PGLUE_B_REG_PGLUE_B_INT_STS \
> 0x9298UL
> #define PGLUE_B_REG_PGLUE_B_INT_STS_CLR \
>
> Modified: head/sys/dev/bxe/ecore_sp.h
> ==============================================================================
> --- head/sys/dev/bxe/ecore_sp.h Fri Jul 18 18:11:24 2014 (r268853)
> +++ head/sys/dev/bxe/ecore_sp.h Fri Jul 18 20:04:11 2014 (r268854)
> @@ -223,6 +223,8 @@ ECORE_CRC32_LE(uint32_t seed, uint8_t *m
> #define ecore_sp_post(_sc, _a, _b, _c, _d) \
> bxe_sp_post(_sc, _a, _b, U64_HI(_c), U64_LO(_c), _d)
>
> +#ifdef ECORE_STOP_ON_ERROR
> +
> #define ECORE_DBG_BREAK_IF(exp) \
> do { \
> if (__predict_false(exp)) { \
> @@ -242,6 +244,20 @@ ECORE_CRC32_LE(uint32_t seed, uint8_t *m
> } \
> } while (0)
>
> +#else
> +
> +#define ECORE_DBG_BREAK_IF(exp) \
> + printf("%s (%s,%d)\n", __FUNCTION__, __FILE__, __LINE__);
> +
> +#define ECORE_BUG(exp) \
> + printf("%s (%s,%d)\n", __FUNCTION__, __FILE__, __LINE__);
> +
> +#define ECORE_BUG_ON(exp) \
> + printf("%s (%s,%d)\n", __FUNCTION__, __FILE__, __LINE__);
> +
> +
> +#endif /* #ifdef ECORE_STOP_ON_ERROR */
> +
> #define ECORE_ERR(str, ...) \
> BLOGE(sc, "ECORE: " str, ##__VA_ARGS__)
>
>
—
Bjoern A. Zeeb "Come on. Learn, goddamn it.", WarGames, 1983
More information about the svn-src-all
mailing list