Send connman mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
https://lists.01.org/mailman/listinfo/connman
or, via email, send a message with subject or body 'help' to
[email protected]
You can reach the person managing the list at
[email protected]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of connman digest..."
Today's Topics:
1. Re: Connman coredump (Daniel Wagner)
----------------------------------------------------------------------
Message: 1
Date: Mon, 25 Sep 2017 21:20:27 +0200
From: Daniel Wagner <[email protected]>
To: Cliff McDiarmid <[email protected]>, [email protected]
Subject: Re: Connman coredump
Message-ID: <[email protected]>
Content-Type: text/plain; charset=utf-8
Hi Cliff,
[...]
connmand[3059]: wlp2s0 {RX} 552 packets 168100 bytes
connmand[3059]: wlp2s0 {TX} 190 packets 25492 bytes
connmand[3059]: src/ipconfig.c:update_stats() service 0x136fb50
connmand[3059]: src/service.c:stats_update() service 0x136fb50
connmand[3059]: src/stats.c:__connman_stats_update() ring buffer is full,
update history file
When the buffer is full, ConnMan creates a summary and adds it
to the history file.
connmand[3059]: src/stats.c:stats_open() file 0x7ffe2ee42030 name
/var/lib/connman/wifi_002710c99f58_544e434150453238313037_managed_psk/history
connmand[3059]: src/stats.c:stats_file_setup() file 0x7ffe2ee42030 fd 23 name
/var/lib/connman/wifi_002710c99f58_544e434150453238313037_managed_psk/history
connmand[3059]: src/stats.c:stats_file_remap() file 0x7ffe2ee42030 size 4096
addr (nil) len 0
connmand[3059]: src/stats.c:stats_file_setup() file 0x7ffe2ee42090 fd 24 name
/var/lib/connman/stats.MGTZ6Y.tmp
connmand[3059]: src/stats.c:stats_file_remap() file 0x7ffe2ee42090 size 4096
addr (nil) len 0
So this looks still okay. The first remap is the history file open (empty
file), the secon remap is a the temporay new history file (also empty).
(connmand:3059): GLib-CRITICAL **: g_date_set_time_t: assertion
'g_date_valid_dmy (date->day, date->month, date->year)' failed
(connmand:3059): GLib-CRITICAL **: g_date_compare: assertion 'g_date_valid
(lhs)' failed
(connmand:3059): GLib-CRITICAL **: g_date_days_between: assertion 'g_date_valid
(d1)' failed
(connmand:3059): GLib-CRITICAL **: g_date_set_time_t: assertion
'g_date_valid_dmy (date->day, date->month, date->year)' failed
(connmand:3059): GLib-CRITICAL **: g_date_set_time_t: assertion
'g_date_valid_dmy (date->day, date->month, date->year)' failed
(connmand:3059): GLib-CRITICAL **: g_date_update_julian: assertion
'g_date_valid_dmy (d->day, d->month, d->year)' failed
[...]
The corresponding code to those glib critical message is:
static int summarize(struct stats_file *data_file,
struct stats_file *history_file,
struct stats_file *temp_file)
{
struct stats_iter data_iter;
struct stats_iter history_iter;
struct stats_record *cur, *next;
GDate today, date_change_step_size;
/*
* First calculate the date when switch from monthly
* accounting period size to daily size
*/
g_date_set_time_t(&today, time(NULL));
date_change_step_size = today;
if (g_date_get_day(&today) - data_file->account_period_offset >= 0)
g_date_subtract_months(&date_change_step_size, 2);
else
g_date_subtract_months(&date_change_step_size, 3);
g_date_set_day(&date_change_step_size,
data_file->account_period_offset);
Since the first glib message is about g_data_set_time_t(), it could be that
glib is not happy with the timezone settings.
https://developer.gnome.org/glib/stable/glib-Date-and-Time-Functions.html#g-date-set-time-t
g_data_set_time_t() calls g_date_valid_dmy eventually which is pretty unhappy:
/**
* g_date_valid_dmy:
* @day: day
* @month: month
* @year: year
*
* Returns %TRUE if the day-month-year triplet forms a valid, existing day
* in the range of days #GDate understands (Year 1 or later, no more than
* a few thousand years in the future).
*
* Returns: %TRUE if the date is a valid one
*/
gboolean
g_date_valid_dmy (GDateDay d,
GDateMonth m,
GDateYear y)
{
return ( (m > G_DATE_BAD_MONTH) &&
(m < 13) &&
(d > G_DATE_BAD_DAY) &&
(y > G_DATE_BAD_YEAR) && /* must check before using
g_date_is_leap_year */
(d <= (g_date_is_leap_year (y) ?
days_in_months[1][m] : days_in_months[0][m])) );
}
Can you check if your time settings are correct on your platform?
Thanks,
Daniel
------------------------------
Subject: Digest Footer
_______________________________________________
connman mailing list
[email protected]
https://lists.01.org/mailman/listinfo/connman
------------------------------
End of connman Digest, Vol 23, Issue 17
***************************************